NAV
JSON cURL PHP Python JAVA C#

Introduction

Cette sous-page contient une description de l'implémentation de nos algorithmes dans votre système. Nos algorithmes ont été créés pour optimiser et visualiser l'emballage d'éléments cubes dans divers espaces de chargement de forme cubique. Chaque algorithme est possible pour se connecter via l'API qui accepte les demandes et renvoie les réponses au format JSON.

Qu'est-ce qu'une API?

Une API est un ensemble de code de programmation qui permet la transmission de données entre un produit logiciel et un autre. Il contient également les termes de cet échange de données.

démarrer

Pour utiliser notre API, vous devez vous inscrire sur notre site Web (www.3dbinpacking.com) et obtenir votre nom d'utilisateur et votre clé API.

Dans le cas où vous aimez tester notre API, veuillez remplacer le nom d'utilisateur et la clé de l'API donnés ci-dessous et collez-les dans la barre d'adresse du navigateur.

https://global-api.3dbinpacking.com/packer/fillContainer?query={"username":"USERNAME","api_key":"API_KEY","items":[{"id":"Speakers","w":3,"h":3,"d":3,"wg":2,"quantity":3,"vr":true},{"id":"Bigger item","w":3,"h":3,"d":5,"wg":1,"quantity":2,"vr":true}],"bins":[{"id":"Pack M","h":4,"w":4,"d":4,"wg":"","max_wg":""},{"id":"Pack S","h":3,"w":3,"d":6,"wg":"","max_wg":""}],"params":{"images_background_color":"255,255,255","images_bin_border_color":"59,59,59","images_bin_fill_color":"230,230,230","images_item_border_color":"22,22,22","images_item_fill_color":"255,193,6","images_item_back_border_color":"22,22,22","images_sbs_last_item_fill_color":"177,14,14","images_sbs_last_item_border_color":"22,22,22","images_format":"svg","images_width":50,"images_height":50,"images_source":"file","save_response":true,"stats":0,"item_coordinates":1,"images_complete":1,"images_sbs":1,"images_separated":0}}

Si vous obtenez une réponse comme ci-dessous, cela signifie que vous avez tout fait correctement.

{"id":"1556529305_9ff402ed696d0a5a3d9f26b8987a3758","not_packed_items":[],"bins_packed":[{"bin_data":{"w":4,"h":4,"d":4,"id":"Pack M","used_space":42.1875,"weight":2,"used_weight":100,"stack_height":3,"order_id":null},"image_complete":"https:\/\/eu.api.3dbinpacking.com\/images\/file_hash1.svg","items":[{"id":"Speakers","w":3,"h":3,"d":3,"wg":2,"image_sbs":"https:\/\/eu.api.3dbinpacking.com\/images\/file_hash2.svg","coordinates":{"x1":0,"y1":0,"z1":0,"x2":3,"y2":3,"z2":3}}]},{"bin_data":{"w":3,"h":3,"d":6,"id":"Pack S","used_space":100,"weight":4,"used_weight":100,"stack_height":3,"order_id":null},"image_complete":"https:\/\/eu.api.3dbinpacking.com\/images\/file_hash3.svg","items":[{"id":"Speakers","w":3,"h":3,"d":3,"wg":2,"image_sbs":"https:\/\/eu.api.3dbinpacking.com\/images\/file_hash4.svg","coordinates":{"x1":0,"y1":0,"z1":0,"x2":3,"y2":3,"z2":3}},{"id":"Speakers","w":3,"h":3,"d":3,"wg":2,"image_sbs":"https:\/\/eu.api.3dbinpacking.com\/images\/file_hash5.svg","coordinates":{"x1":0,"y1":0,"z1":3,"x2":3,"y2":3,"z2":6}}]}]}

points de terminaison

Actuellement, nous avons quelques serveurs qui tournent dans le monde pour une haute disponibilité, une faible latence.
Notre serveur API global est le meilleur. Ce serveur redirigera votre demande vers le serveur disponible le plus proche.

PEM (X.509)

Demandes

En dessous vous pouvez lire les détails sur les méthodes d'envoi de demandes à nos serveurs API.

Méthodes disponibles pour envoyer des données

- POST - Recommandé
- GET (obtenir)

Protocoles disponibles:

- https - Recommended
- http

Méthodes d'appel:

- comme paramètre - Exemple GET: https://global-api.3dbinpacking.com/packer/pack?query={json_encoded_data}
- comme demande de contenu JSON

produits

Emballez une Expédition

Utilisez l’outil Emballez une Expédition pour optimiser votre emballage - par nombre de cartons, utilisation ou coût de l'espace.

URL

Paramètres de demande

Paramètres requis

REQUEST

{
    "username":"USERNAME",
    "api_key":"API_KEY",
    "items":
    [
        {
            "id":"Speakers",
            "w":3,
            "h":3,
            "d":3,
            "wg":2,
            "q":3,
            "vr":true
        },
        {
            "id":"Bigger item",
            "w":3,
            "h":3,
            "d":5,
            "wg":1,
            "q":2,
            "vr":true
        },
        {
            "id":"Too big item",
            "w":5,
            "h":5,
            "d":5,
            "wg":1,
            "q":1,
            "vr":true
        }
    ],
    "bins":
    [
        {
            "id":"Pack M",
            "h":4,
            "w":4,
            "d":4,
            "wg":"",
            "max_wg":"",
            "q":null,
            "cost":0,
            "type":"pallet"
        },
        {
            "id":"Pack S",
            "h":3,
            "w":3,
            "d":6,
            "wg":"",
            "max_wg":"",
            "q":null,
            "cost":0,
            "type":"pallet"
        }
    ],
    "params":
    {
        "images_background_color":"255,255,255",
        "images_bin_border_color":"59,59,59",
        "images_bin_fill_color":"230,230,230",
        "images_item_border_color":"22,22,22",
        "images_item_fill_color":"255,193,6",
        "images_item_back_border_color":"22,22,22",
        "images_sbs_last_item_fill_color":"177,14,14",
        "images_sbs_last_item_border_color":"22,22,22",
        "images_format":"svg",
        "images_width":50,
        "images_height":50,
        "images_source":"file",
        "stats":0,
        "item_coordinates":1,
        "images_complete":1,
        "images_sbs":1,
        "images_separated":0,
        "optimization_mode":"bins_number",
        "images_version":2
    }
}
curl -X POST \
-H "Content-Type: application/json" \
-d '{"username": "USERNAME", "api_key": "API_KEY", "items": [{"id": "Speakers", "w": 3, "h": 3, "d": 3, "wg": 2, "q": 3, "vr": true},{"id": "Bigger item", "w": 3, "h": 3, "d": 5, "wg": 1, "q": 2, "vr": true},{"id":"Too big item","w":5,"h":5,"d":5,"wg":1,"q":1,"vr":true}], "bins": [{"id": "Pack M", "h": 4, "w": 4, "d": 4, "wg": "", "max_wg": "", "q":null, "cost":0, "type":"pallet"},{"id": "Pack S", "h": 3, "w": 3, "d": 6, "wg": "", "max_wg": "", "q":null, "cost":0, "type":"box"}], "params": {"images_background_color": "255,255,255", "images_bin_border_color": "59,59,59", "images_bin_fill_color": "230,230,230", "images_item_border_color": "22,22,22", "images_item_fill_color": "255,193,6", "images_item_back_border_color": "22,22,22", "images_sbs_last_item_fill_color": "177,14,14", "images_sbs_last_item_border_color": "22,22,22", "images_format": "svg", "images_width": 50, "images_height": 50, "images_source": "file", "stats": 0, "item_coordinates": 1, "images_complete": 1, "images_sbs": 1, "images_separated": 0, "optimization_mode":"bins_number", "images_version":2}}' \
https://global-api.3dbinpacking.com/packer/packIntoMany \
-k
<?php
$data = array(
    'bins' => array(
            array(
                    'id' => 'Pack M',
                    'h' => '4',
                    'w' => '4',
                    'd' => '4',
                    'wg' => '',
                    'max_wg' => '',
                    'q'=>null,
                    'cost'=>0,
                    'type'=>'pallet'
                ),
            array(
                    'id' => 'Pack S',
                    'h' => '3',
                    'w' => '3',
                    'd' => '6',
                    'wg' => '',
                    'max_wg' => '',
                    'q'=>null,
                    'cost'=>0,
                    'type'=>'pallet'
                )
        ),
    'items' => array(
            array(
                    'id' => 'Speakers',
                    'w' => '3',
                    'h' => '3',
                    'd' => '3',
                    'wg' => '2',
                    'q' => '3',
                    'vr' => '1'
                ),
            array(
                    'id' => 'Bigger item',
                    'w' => '3',
                    'h' => '3',
                    'd' => '5',
                    'wg' => '1',
                    'q' => '2',
                    'vr' => '1'
                ),
            array(
                    'id' => 'Too big item',
                    'w' => '5',
                    'h' => '5',
                    'd' => '5',
                    'wg' => '1',
                    'q' => '1',
                    'vr' => '1'
                )
        ),
    'username' => 'YOUR_USERNAME',
    'api_key' => 'YOUR_API_KEY',
    'params' => array(
            'images_background_color' => '255,255,255',
            'images_bin_border_color' => '59,59,59',
            'images_bin_fill_color' => '230,230,230',
            'images_item_border_color' => '22,22,22',
            'images_item_fill_color' => '255,193,6',
            'images_item_back_border_color' => '22,22,22',
            'images_sbs_last_item_fill_color' => '177,14,14',
            'images_sbs_last_item_border_color' => '22,22,22',
            'images_format' => 'svg',
            'images_width' => '50',
            'images_height' => '50',
            'images_source' => 'file',
            'stats' => '0',
            'item_coordinates' => '1',
            'images_complete' => '1',
            'images_sbs' => '1',
            'images_separated' => '0',
            'optimization_mode'=>'bins_number',
            'images_version'=>2
        )
);
$query = json_encode($data);

$url = "https://global-api.3dbinpacking.com/packer/packIntoMany"; $prepared_query = 'query='.$query; $ch = curl_init($url); curl_setopt( $ch, CURLOPT_POST, true ); curl_setopt( $ch, CURLOPT_POSTFIELDS, $prepared_query ); curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false ); curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, false ); curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 ); $resp = curl_exec($ch); if (curl_errno($ch)) { echo 'Error #' . curl_errno($ch) . ': ' . curl_error($ch).'<br>'; } curl_close($ch);

$response = json_decode($resp,true); // display errors if(isset($response['response']['errors'])){ foreach($response['response']['errors'] as $error){ echo $error['message'].'<br>'; } } // display data if( $response['response']['status'] > -1 ){ $b_packed= $response['response']['bins_packed']; foreach ($b_packed as $bin){ echo "<h2>Bin id:{$bin['bin_data']['id']}</h2> <p> {$bin['bin_data']['w']} x {$bin['bin_data']['h']} x {$bin['bin_data']['d']}</p> <p> Weight:{$bin['bin_data']['weight']}</p> <p> Used weight:{ $bin['bin_data']['used_weight'] }</p> <img src=\"{$bin['image_complete']}\"> <h2>Items packed in this bin:</h2>"; $items = $bin['items']; echo '<table style="text-align: center"> <tr><th>Item id</th> <th>Item dimensions</th> <th>Item weight</th> <th>Separated item</th> <th>Step by step</th></tr>'; foreach ( $items as $item){ echo "<tr><td>{$item['id']}</td> <td> {$item['w']} x {$item['h']} x {$bin['bin_data']['d']}</td> <td> {$item['wg']}</td> <td><img src=\"{$item['image_separated']}\"></td> <td><img src=\"{$item['image_sbs']}\"></td> </tr>"; } echo '</table>'; echo '<hr>';

} }

#!/usr/bin/python

import httplib
import urllib
import json

conn = httplib.HTTPConnection(host='global-api.3dbinpacking.com', port=80) data = {"username": "USERNAME", "api_key": "API_KEY", "items": [{"id": "Speakers", "w": 3, "h": 3, "d": 3, "wg": 2, "q": 3, "vr": true},{"id": "Bigger item", "w": 3, "h": 3, "d": 5, "wg": 1, "q": 2, "vr": true},{"id": "Too big item", "w": 5, "h": 5, "d": 5, "wg": 1, "q": 1, "vr": true}], "bins": [{"id": "Pack M", "h": 4, "w": 4, "d": 4, "wg": "", "max_wg": "", "q":null, "cost":0, "type":"pallet"},{"id": "Pack S", "h": 3, "w": 3, "d": 6, "wg": "", "max_wg": "", "q":null, "cost":0 "type":"box"}], "params": {"images_background_color": "255,255,255", "images_bin_border_color": "59,59,59", "images_bin_fill_color": "230,230,230", "images_item_border_color": "22,22,22", "images_item_fill_color": "255,193,6", "images_item_back_border_color": "22,22,22", "images_sbs_last_item_fill_color": "177,14,14", "images_sbs_last_item_border_color": "22,22,22", "images_format": "svg", "images_width": 50, "images_height": 50, "images_source": "file", "stats": 0, "item_coordinates": 1, "images_complete": 1, "images_sbs": 1, "images_separated": 0, "optimization_mode":"bins_number", "images_version":2}} params = urllib.urlencode( {'query':json.dumps(data)} ) headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"} conn.request( "POST", "/packer/packIntoMany", params, headers ) content = conn.getresponse( ).read( ) conn.close( ) print content

package javaapplication1;

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.ProtocolException; import java.net.URL; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map;; import org.json.simple.JSONObject; import org.springframework.web.client.RestTemplate;

public class JavaApplication1 {

/** * @param args the command line arguments */ public static void main(String[] args) throws MalformedURLException, ProtocolException, IOException { RestTemplate restTemplate = new RestTemplate(); JSONObject json = new JSONObject();

//SET BINS List<Map<String , String>> bins = new ArrayList<Map<String,String>>();

Map<String, String> bin1 = new HashMap<String, String>(); bin1.put("id", "Pack M"); bin1.put("h", "4"); bin1.put("w", "4"); bin1.put("d", "4"); bin1.put("wg", ""); bin1.put("max_wg", ""); bin1.put("q", null); bin1.put("cost", 0); bin1.put("type","pallet"); bins.add(bin1); Map<String, String> bin2 = new HashMap<String, String>(); bin2.put("id", "Pack S"); bin2.put("h", "3"); bin2.put("w", "3"); bin2.put("d", "6"); bin2.put("wg", ""); bin2.put("max_wg", ""); bin2.put("q", null); bin2.put("cost", 0); bin2.put("type", "pallet"); bins.add(bin2);

//SET ITEMS List<Map<String , String>> items = new ArrayList<Map<String,String>>(); Map<String, String> item1 = new HashMap<String, String>(); item1.put("id", "Speakers"); item1.put("w", "3"); item1.put("h", "3"); item1.put("d", "3"); item1.put("wg", "2"); item1.put("q", "3"); item1.put("vr", "1"); items.add(item1); Map<String, String> item2 = new HashMap<String, String>(); item2.put("id", "Bigger item"); item2.put("w", "3"); item2.put("h", "3"); item2.put("d", "5"); item2.put("wg", "1"); item2.put("q", "2"); item2.put("vr", "1"); items.add(item2); Map<String, String> item3 = new HashMap<String, String>(); item3.put("id", "Too big item"); item3.put("w", "5"); item3.put("h", "5"); item3.put("d", "5"); item3.put("wg", "1"); item3.put("q", "1"); item3.put("vr", "1"); items.add(item3);

//SET PARAMETERS Map <String , String > params = new HashMap <String , String >(); params.put("images_background_color", "255,255,255") params.put("images_bin_border_color", "59,59,59") params.put("images_bin_fill_color", "230,230,230") params.put("images_item_border_color", "22,22,22") params.put("images_item_fill_color", "255,193,6") params.put("images_item_back_border_color", "22,22,22") params.put("images_sbs_last_item_fill_color", "177,14,14") params.put("images_sbs_last_item_border_color", "22,22,22") params.put("images_format", "svg") params.put("images_width", "50") params.put("images_height", "50") params.put("images_source", "file") params.put("stats", "0") params.put("item_coordinates", "1") params.put("images_complete", "1") params.put("images_sbs", "1") params.put("images_separated", "0") params.put("optimization_mode", "bins_number") params.put("images_version", "2")

//ADD ELEMENTS TO JSON json.put("username", "YOUR_USERNAME"); json.put("api_key", "YOUR_API_KEY"); json.put("items", items); json.put("bins", bins); json.put("params", params);

//CALL QUERY HttpURLConnection conn; URL addr = new URL("https://global-api.3dbinpacking.com/packer/packIntoMany"); conn = (HttpURLConnection) addr.openConnection(); conn.setRequestMethod("POST"); conn.setDoOutput(true); conn.connect(); OutputStreamWriter osw = new OutputStreamWriter(conn.getOutputStream());

// prepare POST body String query = "query=" + json.toString();

osw.write(query); osw.flush(); osw.close();

BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream())); String response_json = br.readLine();

//DO SOMETHING COOL WITH THE RESPONSE System.out.println(response_json); } }

string data;
System.Net.HttpWebRequest req = System.Net.WebRequest.Create("https://global-api.3dbinpacking.com/packer/packIntoMany") as System.Net.HttpWebRequest;

var request_data = new {username = "YOUR_USERNAME", api_key = "YOUR_API_KEY", items = new[] { new { id = "Speakers", w = "3", h = "3", d = "3", wg = "2", q = "3", vr = "1"}, new { id = "Bigger item", w = "3", h = "3", d = "5", wg = "1", q = "2", vr = "1"}, new { id = "Too big item", w = "5", h = "5", d = "5", wg = "1", q = "1", vr = "1"} }, bins = new[] { new { id = "Pack M", h = "4", w = "4", d = "4", wg = "", max_wg = "", "q" = null, "cost" = 0, "type" = "pallet"}, new { id = "Pack S", h = "3", w = "3", d = "6", wg = "", max_wg = "", "q" = null, "cost" = 0, "type" = "box"} },

@params = new { images_background_color = "255,255,255", images_bin_border_color = "59,59,59", images_bin_fill_color = "230,230,230", images_item_border_color = "22,22,22", images_item_fill_color = "255,193,6", images_item_back_border_color = "22,22,22", images_sbs_last_item_fill_color = "177,14,14", images_sbs_last_item_border_color = "22,22,22", images_format = "svg", images_width = "50", images_height = "50", images_source = "file", stats = "0", item_coordinates = "1", images_complete = "1", images_sbs = "1", images_separated = "0", optimization_mode= "bins_number", images_version = "2" } };

string json_str = JsonConvert.SerializeObject(request_data);

string queryParam = "query="+json_str;

byte[] postBytes = System.Text.Encoding.ASCII.GetBytes(queryParam); req.Method = "POST"; req.ContentType = "application/x-www-form-urlencoded"; req.ContentLength = postBytes.Length;

System.IO.Stream postStream = req.GetRequestStream(); postStream.Write(postBytes, 0, postBytes.Length); postStream.Close();

X509Certificate Cert = X509Certificate2.CreateFromCertFile("path_to_pem_key\global-api.3dbinpacking.com.pem"); req.ClientCertificates.Add(Cert);

using (System.Net.HttpWebResponse response = req.GetResponse() as System.Net.HttpWebResponse) { System.IO.StreamReader reader = new System.IO.StreamReader(response.GetResponseStream()); data = reader.ReadToEnd(); }

nom de param Description type de données
username
(requis)
nom d'utilisateur. Vous pouvez trouver la touche API dans la section ' / Profile settings / API access' après la connexion dans https : //www.3dbinpacking.com/en/customer/api-data chaîne
api_key
(requis)
clé API. Vous pouvez trouver la clé API dans la section '/ Profile settings/API access' après la connexion dans https://www.3dbinpacking.com/en/customer/api-data chaîne
[bins]
(requis)
tableau des paramètres d'espace d'emballage réseau
[items]
(requis)
translation missing: fr.params_array_items réseau
params tableau des paramètres de demande supplémentaires of extra request parameters réseau

[bins] - Détails du tableau des espaces d'emballage

nom de param Description type de données
id
(requis)
ID d'espace d’emballage. Le numéro ou le code que vous utilisez pour identifier l'espace d'emballage. chaîne
w
(requis)
Largeur d'espace d'emballage entier ou flottant
h
(requis)
Hauteur d'espace d'emballage entier ou flottant
d
(requis)
Profondeur / longueur d'espace d'emballage entier ou flottant
wg le poids de l'espace d'emballage entier ou flottant
max_wg Le poids maximum que cet espace d'emballage peut contenir. Valeur définie sur '0' (zéro) signifie qu'il n'y a pas de limite de poids entier ou flottant
q Nombre maximum d'espaces d'emballage de dimensions données nul ou entier; si la valeur n'est pas définie ou est définie sur nulle - cela signifie que le nombre d'espaces d'emballage est indéfini
cost Coût d'expédition d'espace d'emballage. Cette valeur est utilisée lors de l'emballage avec des paramètres 'optimization_mode' définis sur 'coût' entier ou flottant
type
Seulement avec images_version: 2 le paramètre
Spécifie si l'image sera présentée sous la forme d'un carton ou d'une palette translation missing: fr.params_type_stringt

[items] - Détails du tableau des produits

nom de param Description type de données info
id
(requis)
ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w
(requis)
La largeur de l'élément entier ou flottant
h
(requis)
La hauteur de l'élément entier ou flottant
d
(requis)
la profondeur ou la longueur de l'article entier ou flottant
wg le poids de l'article entier ou flottant
vr Rotation verticale. Les informations si l'article peut être tourné verticalement. entier Rotation verticale. Les informations si l'article peut être tourné verticalement.
q
(requis)
la quantité des mêmes articles à emballer entier
group Les articles groupés sont emballés ensemble, ce qui permet de séparer par exemple les produits alimentaires (groupe 'X' ) des détergents domestiques (groupe 'Y' ). chaîne
separate Séparation des articles; les paramètres définis sur« 1 »signifie que les articles donnés ne peuvent pas être emballés avec d'autres éléments entier Valeurs disponibles:
1 - signifie que les articles seront séparés,
0 [par défaut] - signifie que les articles ne seront pas séparés
limit_per_bin Définissez le nombre d'articles qui peuvent être emballés dans un seul espace d'emballage entier
acceptable_bins Définissez les espaces d'emballage qui peuvent être utilisés pour emballer les éléments. Si le paramètre n'est pas défini, tous les espaces d'emballage peuvent être utilisés. Les valeurs étant donné doivent contenir l'ID des espaces d'emballage inclus dans le paramètre 'bacs'. réseau
item_colors_schema Définissez quel type de schéma de couleur doit être utilisé chaîne Valeurs disponibles:
Par défaut - Les couleurs définies dans les paramètres suivants seront utilisées 'images_item_border_color' et 'images_bin_fill_color',
'random' - x,
'item' - x
item_fill_color Couleur de remplissage d'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
item_border_color Couleur de la bordure de l'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'

params - Paramètres optionnels

nom de param Description type de données info
optimization_mode Définir une méthode d'optimisation d'emballage chaîne Valeurs disponibles:
bins_number [par défaut] - le plus petit nombre possible d'espaces d'emballage;
bins_utilisation - Max. Utilisation à l'intérieur des espaces d'emballage;
Coût - le coût le plus bas de l'expédition ou du transport ('coût' Le paramètre doit être donné pour chaque espace d'emballage)
images_version Version du générateur d'images entier Valeurs disponibles: [1 | 2]
images_width translation missing: fr.images_width_d entier Valeurs disponibles: 1 - 250
images_height Hauteur maximale des images générées entier Valeurs disponibles: 1 - 250
images_background_color couleur d'arrière-plan chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_border_color
Seulement avec images_version: 1 le paramètre
Couleur de bordure d'espace d'emballage chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_dashed_line_color
Seulement avec images_version: 1 le paramètre
Couleur de la bordure avant de l’espace d’emballage (en pointillés) chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_fill_color Couleur de remplissage d'espace d'emballage chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_item_fill_color Couleur de remplissage d'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_item_border_color
Seulement avec images_version: 1 le paramètre
Couleur de la bordure de l'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_sbs_last_item_fill_color Remplissez la couleur du dernier élément sur les images montrant un processus d'emballage 'étape par étape' chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_sbs_last_item_border_color
Seulement avec images_version: 1 le paramètre
Couleur de bordure du dernier élément sur des images montrant l'emballage 'étape par étape' chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_format format d'images chaîne Valeurs disponibles: [png, svg]
images_sbs Générer des images montrant un processus d'emballage 'étape par étape' entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant un processus d'emballage 'étape par étape' ne seront pas générées,
1 - signifie que les images montrant un processus d'emballage 'étape par étape' seront générées
images_complete Générer des images montrant un résultat d'emballage final entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant le résultat de l'emballage final ne seront pas générées,
1 - signifie que les images montrant le résultat de l'emballage final seront générées
images_separated Générez des images montrant séparément le placement de chaque élément entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant le placement de chaque élément séparément ne seront pas générées,
1 - signifie que les images montrant le placement de chaque élément séparément seront générées
item_coordinates Retour Coordonnées (x, y, z) pour chaque élément entier Valeurs disponibles:
0 [par défaut] - signifie que les coordonnées du placement de chaque élément ne seront pas retournées,
1 - que les coordonnées du placement de chaque élément seront retournées
stats Renvoyez les statistiques d'un processus d'emballage (par exemple, temps de génération d'images) entier Valeurs disponibles:
0 [par défaut] - signifie que les statistiques d'un processus d'emballage ne seront pas retournées,
1 - signifie que les statistiques d'un processus d'emballage seront retournées

translation missing: fr.response_parameters_h

RESPONSE

{
    "response":{
        "id":"response_id",
        "bins_packed":[
            {
                "bin_data":{
                    "w":3,
                    "h":3,
                    "d":6,
                    "id":"Pack S",
                    "used_space":100,
                    "weight":4,
                    "gross_weight":4,
                    "used_weight":100,
                    "stack_height":3
                },
                "image_complete":"image_url.svg",
                "items":[
                    {
                        "id":"Speakers",
                        "w":3,
                        "h":3,
                        "d":3,
                        "wg":2,
                        "image_sbs":"image_url.svg",
                        "coordinates":{"x1":0,"y1":0,"z1":0,"x2":3,"y2":3,"z2":3}
                    },{
                        "id":"Speakers",
                        "w":3,
                        "h":3,
                        "d":3,
                        "wg":2,
                        "image_sbs":"image_url.svg",
                        "coordinates":{"x1":0,"y1":0,"z1":3,"x2":3,"y2":3,"z2":6}
                    }
                ]
            },{
                "bin_data":{
                    "w":3,
                    "h":3,
                    "d":6,
                    "id":"Pack S",
                    "used_space":83.3333,
                    "weight":1,
                    "gross_weight":1,
                    "used_weight":100,
                    "stack_height":3
                },
                "image_complete":"image_url.svg",
                "items":[
                    {
                        "id":"Bigger item",
                        "w":3,
                        "h":3,
                        "d":5,
                        "wg":1,
                        "image_sbs":"image_url.svg",
                        "coordinates":{"x1":0,"y1":0,"z1":0,"x2":3,"y2":3,"z2":5}
                    }
                ]
            }
        ],
        "errors":[
            {
                "level":"notice",
                "message":"Item \u0027Too big item\u0027 can\u0027t be packed into any bin."
            }
        ],
        "status":1,
        "not_packed_items":[
            {
                "id":"Too big item",
                "q":1,
                "w":5,
                "h":5,
                "d":5,
                "wg":1
            }
        ]
    }
}

nom de param Description type de données info
[bins_packed] Liste des articles emballés réseau
errors Liste des erreurs possibles qui peuvent survenir dans la demande réseau Exemple: [{'niveau'}]; Valeurs retournées possibles: 'critique' - erreur critique - désactivation de l'emballage, 'avertissement' - avertissement concernant les données incorrectes dans la demande
status Statut de réponse entier Valeurs retournées possibles:
1 - La réponse n'a pas inclus d'erreurs critiques,
0 - La réponse a inclus des erreurs critiques. * Erreur critique - l'erreur de désactivation de l'emballage.Elle peut être due à l’absence d’un des paramètres requis ('username','api_key') ou à une valeure incorrecte du paramètre (par exemple: un champ, qui devrait contenir un nombre, contient une chaîne).
[not_packed_items] la liste d’éléments incapables d'être emballés, par exemple Paramètres incorrects d’entrée, poids excessif ou taille réseau

[bins_packed] - la liste des espaces d'emballage à emballer

nom de param Description type de données
bin_data Détails de l'espace d'emballage à emballer réseau
image_complete translation missing: fr.response_image_complete url
[items] translation missing: fr.response_items réseau

[bin_data] - détails de l'espace d'emballage à emballer

nom de param Description type de données
id ID d'espace d’emballage. Le numéro ou le code que vous utilisez pour identifier l'espace d'emballage. chaîne
w Largeur d'espace d'emballage entier ou flottant
h Hauteur d'espace d'emballage entier ou flottant
d Profondeur / longueur d'espace d'emballage entier ou flottant
used_space pourcentage d'espace d'emballage utilisé entier ou flottant
weight poids des éléments à emballer entier ou flottant
gross_weight poids des articles à emballer + poids de l'espace d'emballage entier ou flottant
used_weight pourcentage du poids autorisé utilisé entier ou flottant
stack_height la hauteur des éléments empilés entier ou flottant

[items] - la liste des éléments à emballer

nom de param Description type de données
id ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w La largeur de l'élément entier ou flottant
h La hauteur de l'élément entier ou flottant
d la profondeur ou la longueur de l'article entier ou flottant
wg le poids de l'article entier ou flottant
image_separated translation missing: fr.response_params_image_separated url
image_sbs translation missing: fr.response_params_image_sbs url
coordinates translation missing: fr.response_params_coordinates {"x1":0,"y1":0,"z1":0,"x2":5,"y2":3,"z2":2}

[not_packed_items] - la liste des éléments incapables d'être emballés

nom de param Description type de données
id ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w La largeur de l'élément entier ou flottant
h La hauteur de l'élément entier ou flottant
d la profondeur ou la longueur de l'article entier ou flottant
q la quantité des mêmes articles à emballer entier
wg le poids de l'article entier ou flottant

Empiler les palettes

Utilisez l'outil Empiler les palettes pour optimiser la façon dont vous emballez vos palettes et réduisez leur nombre pour le transport et le stockage.

URL

Paramètres de demande

Paramètres requis

REQUEST

{
    "username":"USERNAME",
    "api_key":"API_KEY",
    "items":
    [
        {
            "id":"Speakers",
            "w":3,
            "h":3,
            "d":3,
            "wg":2,
            "q":2,
            "vr":true
        },
        {
            "id":"Bigger item",
            "w":3,
            "h":3,
            "d":5,
            "wg":1,
            "q":2,
            "vr":true
        }
    ],
    "pallet":
    {
        "id":"Palet M",
        "h":4,
        "w":4,
        "d":4,
        "wg":"",
        "max_wg":"",
        "type":"pallet"
    },
    "params":
    {
        "images_background_color":"255,255,255",
        "images_bin_border_color":"59,59,59",
        "images_bin_fill_color":"230,230,230",
        "images_item_border_color":"22,22,22",
        "images_item_fill_color":"255,193,6",
        "images_item_back_border_color":"22,22,22",
        "images_sbs_last_item_fill_color":"177,14,14",
        "images_sbs_last_item_border_color":"22,22,22",
        "images_format":"svg",
        "images_width":50,
        "images_height":50,
        "images_source":"file",
        "stats":0,
        "item_coordinates":1,
        "images_complete":1,
        "images_sbs":1,
        "images_separated":0
        "images_version":2
    }
}

nom de param Description type de données
username
(requis)
nom d'utilisateur. Vous pouvez trouver la touche API dans la section ' / Profile settings / API access' après la connexion dans https : //www.3dbinpacking.com/en/customer/api-data chaîne
api_key
(requis)
clé API. Vous pouvez trouver la clé API dans la section '/ Profile settings/API access' après la connexion dans https://www.3dbinpacking.com/en/customer/api-data chaîne
[pallet]
(requis)
Array of pallet parameters réseau
[items]
(requis)
translation missing: fr.params_array_items réseau
params tableau des paramètres de demande supplémentaires réseau

[pallet] - translation missing: fr.pallet_array_details

nom de param Description type de données
id
(requis)
ID de palette. Une palette sur laquelle vous souhaitez empiler vos articles chaîne
w
(requis)
largeur de palette entier ou flottant
h
(requis)
hauteur de palette entier ou flottant
d
(requis)
profondeur / longueur de palette entier ou flottant
wg le poids de l'espace d'emballage entier ou flottant
max_wg Le poids maximum que cet espace d'emballage peut contenir. Valeur définie sur '0' (zéro) signifie qu'il n'y a pas de limite de poids entier ou flottant
type
Seulement avec images_version: 2 le paramètre
Spécifie si l'image sera présentée sous la forme d'un carton ou d'une palette translation missing: fr.params_type_stringt

[items] - Détails du tableau des produits

nom de param Description type de données info
id
(requis)
ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w
(requis)
La largeur de l'élément entier ou flottant
h
(requis)
La hauteur de l'élément entier ou flottant
d
(requis)
la profondeur ou la longueur de l'article entier ou flottant
wg le poids de l'article entier ou flottant
vr Rotation verticale. Les informations si l'article peut être tourné verticalement. entier Rotation verticale. Les informations si l'article peut être tourné verticalement.
q
(requis)
la quantité des mêmes articles à emballer entier
item_colors_schema Définissez quel type de schéma de couleur doit être utilisé chaîne
item_fill_color Couleur de remplissage d'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
item_border_color Couleur de la bordure de l'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'

params - Paramètres optionnels

nom de param Description type de données info
images_version Version du générateur d'images entier Valeurs disponibles: [1 | 2]
images_width translation missing: fr.images_width_d entier Valeurs disponibles: 1 - 250
images_height Hauteur maximale des images générées entier Valeurs disponibles: 1 - 250
images_background_color couleur d'arrière-plan chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_border_color
Seulement avec images_version: 1 le paramètre
Couleur de bordure d'espace d'emballage chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_dashed_line_color
Seulement avec images_version: 1 le paramètre
Couleur de la bordure avant de l’espace d’emballage (en pointillés) chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_fill_color Couleur de remplissage d'espace d'emballage chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_item_fill_color Couleur de remplissage d'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_item_border_color
Seulement avec images_version: 1 le paramètre
Couleur de la bordure de l'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_sbs_last_item_fill_color Remplissez la couleur du dernier élément sur les images montrant un processus d'emballage 'étape par étape' chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_sbs_last_item_border_color
Seulement avec images_version: 1 le paramètre
Couleur de bordure du dernier élément sur des images montrant l'emballage 'étape par étape' chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_format format d'images chaîne Valeurs disponibles: [png, svg]
images_sbs Générer des images montrant un processus d'emballage 'étape par étape' entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant un processus d'emballage 'étape par étape' ne seront pas générées,
1 - signifie que les images montrant un processus d'emballage 'étape par étape' seront générées
images_complete Générer des images montrant un résultat d'emballage final entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant le résultat de l'emballage final ne seront pas générées,
1 - signifie que les images montrant le résultat de l'emballage final seront générées
images_separated Générez des images montrant séparément le placement de chaque élément entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant le placement de chaque élément séparément ne seront pas générées,
1 - signifie que les images montrant le placement de chaque élément séparément seront générées
item_coordinates Retour Coordonnées (x, y, z) pour chaque élément entier Valeurs disponibles:
0 [par défaut] - signifie que les coordonnées du placement de chaque élément ne seront pas retournées,
1 - que les coordonnées du placement de chaque élément seront retournées
stats Renvoyez les statistiques d'un processus d'emballage (par exemple, temps de génération d'images) entier Valeurs disponibles:
0 [par défaut] - signifie que les statistiques d'un processus d'emballage ne seront pas retournées,
1 - signifie que les statistiques d'un processus d'emballage seront retournées

translation missing: fr.response_parameters_h

RESPONSE

{
    "id":"response_id",
    "pallets_packed":[
        {
            "pallet_data":{
                "w":4,
                "h":3,
                "d":4,
                "id":"Paleta M",
                "used_space":56.25,
                "weight":2,
                "used_weight":100,
                "gross_weight":2,
                "stack_height":3
            },
            "image_complete":"image_url.svg",
            "items":[
                {
                    "id":"Speakers",
                    "w":3,
                    "h":3,
                    "d":3,
                    "wg":2,
                    "image_sbs":"image_url.svg",
                    "coordinates":{"x1":0,"y1":0,"z1":0,"x2":3,"y2":3,"z2":3}
                }
            ]
        },
        {
            "pallet_data":{
                "w":4,
                "h":3,
                "d":4,
                "id":"Palet M",
                "used_space":56.25,
                "weight":2,
                "used_weight":100,
                "gross_weight":2,
                "stack_height":3
            },
            "image_complete":"image_url.svg",
            "items":[
                {
                    "id":"Speakers",
                    "w":3,
                    "h":3,
                    "d":3,
                    "wg":2,
                    "image_sbs":"image_url.svg",
                    "coordinates":{"x1":0,"y1":0,"z1":0,"x2":3,"y2":3,"z2":3}
                }
            ]
        }
    ],
    "errors":[],
    "status":1,
    "not_packed_items":[
        {
            "id":"Bigger item",
            "q":2,
            "w":3,
            "h":3,
            "d":5,
            "wg":1
        }
    ]
}

nom de param Description type de données info
[pallets_packed] la liste des palettes à emballer réseau
errors Liste des erreurs possibles qui peuvent survenir dans la demande réseau Exemple: [{'niveau'}]; Valeurs retournées possibles: 'critique' - erreur critique - désactivation de l'emballage, 'avertissement' - avertissement concernant les données incorrectes dans la demande
status Statut de réponse entier Valeurs retournées possibles:
1 - La réponse n'a pas inclus d'erreurs critiques,
0 - La réponse a inclus des erreurs critiques. * Erreur critique - l'erreur de désactivation de l'emballage.Elle peut être due à l’absence d’un des paramètres requis ('username','api_key') ou à une valeure incorrecte du paramètre (par exemple: un champ, qui devrait contenir un nombre, contient une chaîne).
[not_packed_items] la liste d’éléments incapables d'être emballés, par exemple Paramètres incorrects d’entrée, poids excessif ou taille réseau

[pallets_packed] - translation missing: fr.pallets_packed_parameters_h

nom de param Description type de données
pallet_data Détails de l'espace d'emballage à emballer réseau
image_complete translation missing: fr.response_image_complete url
[items] translation missing: fr.response_items réseau

[pallet_data] - détails de l'espace d'emballage à emballer

nom de param Description type de données
id ID d'espace d’emballage. Le numéro ou le code que vous utilisez pour identifier l'espace d'emballage. chaîne
w Largeur d'espace d'emballage entier ou flottant
h Hauteur d'espace d'emballage entier ou flottant
d Profondeur / longueur d'espace d'emballage entier ou flottant
used_space pourcentage d'espace d'emballage utilisé entier ou flottant
weight poids des éléments à emballer entier ou flottant
gross_weight poids des articles à emballer + poids de l'espace d'emballage entier ou flottant
used_weight pourcentage du poids autorisé utilisé entier ou flottant
stack_height la hauteur des éléments empilés entier ou flottant

[items] - la liste des éléments à emballer

nom de param Description type de données
id ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w La largeur de l'élément entier ou flottant
h La hauteur de l'élément entier ou flottant
d la profondeur ou la longueur de l'article entier ou flottant
wg le poids de l'article entier ou flottant
image_separated translation missing: fr.response_params_image_separated url
image_sbs translation missing: fr.response_params_image_sbs url
coordinates translation missing: fr.response_params_coordinates {"x1":0,"y1":0,"z1":0,"x2":5,"y2":3,"z2":2}

[not_packed_items] - la liste des éléments incapables d'être emballés

nom de param Description type de données
id ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w La largeur de l'élément entier ou flottant
h La hauteur de l'élément entier ou flottant
d la profondeur ou la longueur de l'article entier ou flottant
q la quantité des mêmes articles à emballer entier
wg le poids de l'article entier ou flottant

Trouver une Dimension Manquante

Utilisez l’outil Trouver une Dimension Manquante pour calculer les mesures et l’espace que votre emballage utilisera.

URL

Paramètres de demande

Paramètres requis

REQUEST

{
    "username":"USERNAME",
    "api_key":"API_KEY",
    "bins": [
        {
            "w": 5,
            "h": 0,
            "d": 5,
            "id": "Bin1",
            "find": "h",
            "type":"pallet"
        },
        {
            "w": 3,
            "h": 30,
            "d": 3,
            "id": "Bin2",
            "find": "h",
            "type":"box"
        }
    ],
    "items": [
        {
            "w": 5,
            "h": 3,
            "d": 2,
            "q": 2,
            "vr": 1,
            "id": "Item1"
        },
        {
            "w": 3,
            "h": 3,
            "d": 3,
            "q": 3,
            "vr": 1,
            "id": "Item2"
        }
    ],
    "params":
    {
        "images_background_color":"255,255,255",
        "images_bin_border_color":"59,59,59",
        "images_bin_fill_color":"230,230,230",
        "images_item_border_color":"22,22,22",
        "images_item_fill_color":"255,193,6",
        "images_item_back_border_color":"22,22,22",
        "images_sbs_last_item_fill_color":"177,14,14",
        "images_sbs_last_item_border_color":"22,22,22",
        "images_format":"svg",
        "images_width":50,
        "images_height":50,
        "images_source":"file",
        "stats":0,
        "item_coordinates":1,
        "images_complete":1,
        "images_sbs":1,
        "images_separated":0,
        "images_version": 2
    }
}
curl -X POST \
-H "Content-Type: application/json" \
-d '{"username": "USERNAME", "api_key": "API_KEY", "bins": [{"w": 5,"h": 0,"d": 5,"id": "Bin1","find": "h", "type":"pallet"},{"w": 3,"h": 30,"d": 3,"id": "Bin2","find": "h", "type":"box"}],"items": [{"w": 5,"h": 3,"d": 2,"q": 2,"vr": 1,"id": "Item1"},{"w": 3,"h": 3,"d": 3,"q": 3,"vr": 1,"id": "Item2"}], "params": {"images_background_color": "255,255,255", "images_bin_border_color": "59,59,59", "images_bin_fill_color": "230,230,230", "images_item_border_color": "22,22,22", "images_item_fill_color": "255,193,6", "images_item_back_border_color": "22,22,22", "images_sbs_last_item_fill_color": "177,14,14", "images_sbs_last_item_border_color": "22,22,22", "images_format": "svg", "images_width": 50, "images_height": 50, "images_source": "file", "stats": 0, "item_coordinates": 1, "images_complete": 1, "images_sbs": 1, "images_separated": 0, "images_version":2}}' \
https://global-api.3dbinpacking.com/packer/findSmallestBin \
-k
<?php

$data = array( 'bins' => array( array( 'id' => 'Bin1', 'h' => '0', 'w' => '5', 'd' => '5', 'find' => 'h', 'type' => 'pallet' ), array( 'id' => 'Pack S', 'h' => '30', 'w' => '3', 'd' => '3', 'find' => 'h', 'type' => 'box' ) ), 'items' => array( array( 'id' => 'Item1', 'w' => '5', 'h' => '3', 'd' => '2', 'wg' => '2', 'q' => '2', 'vr' => '1' ), array( 'id' => 'Item2', 'w' => '3', 'h' => '3', 'd' => '3', 'wg' => '1', 'q' => '3', 'vr' => '1' ) ), 'username' => 'YOUR_USERNAME', 'api_key' => 'YOUR_API_KEY', 'params' => array( 'images_background_color' => '255,255,255', 'images_bin_border_color' => '59,59,59', 'images_bin_fill_color' => '230,230,230', 'images_item_border_color' => '22,22,22', 'images_item_fill_color' => '255,193,6', 'images_item_back_border_color' => '22,22,22', 'images_sbs_last_item_fill_color' => '177,14,14', 'images_sbs_last_item_border_color' => '22,22,22', 'images_format' => 'svg', 'images_width' => '50', 'images_height' => '50', 'images_source' => 'file', 'stats' => '0', 'item_coordinates' => '1', 'images_complete' => '1', 'images_sbs' => '1', 'images_separated' => '0', 'images_version' => 2 ) ); $query = json_encode($data);

$url = "https://global-api.3dbinpacking.com/packer/findSmallestBin"; $prepared_query = 'query='.$query; $ch = curl_init($url); curl_setopt( $ch, CURLOPT_POST, true ); curl_setopt( $ch, CURLOPT_POSTFIELDS, $prepared_query ); curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false ); curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, false ); curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 ); $resp = curl_exec($ch); if (curl_errno($ch)) { echo 'Error #' . curl_errno($ch) . ': ' . curl_error($ch).'<br>'; } curl_close($ch);

$response = json_decode($resp,true); // display errors if(isset($response['response']['errors'])){ foreach($response['response']['errors'] as $error){ echo $error['message'].'<br>'; } } // display data if( $response['response']['status'] > -1 ){ $b_packed= $response['response']['bins_packed']; foreach ($b_packed as $bin){ echo "<h2>Bin id:{$bin['bin_data']['id']}</h2> <p> {$bin['bin_data']['w']} x {$bin['bin_data']['h']} x {$bin['bin_data']['d']}</p> <p> Weight:{$bin['bin_data']['weight']}</p> <p> Used weight:{ $bin['bin_data']['used_weight'] }</p> <img src=\"{$bin['image_complete']}\"> <h2>Items packed in this bin:</h2>"; $items = $bin['items']; echo '<table style="text-align: center"> <tr><th>Item id</th> <th>Item dimensions</th> <th>Item weight</th> <th>Separated item</th> <th>Step by step</th></tr>'; foreach ( $items as $item){ echo "<tr><td>{$item['id']}</td> <td> {$item['w']} x {$item['h']} x {$bin['bin_data']['d']}</td> <td> {$item['wg']}</td> <td><img src=\"{$item['image_separated']}\"></td> <td><img src=\"{$item['image_sbs']}\"></td> </tr>"; } echo '</table>'; echo '<hr>';

} }

#!/usr/bin/python

import httplib
import urllib
import json

conn = httplib.HTTPConnection(host='global-api.3dbinpacking.com', port=80) data = {"username": "USERNAME", "api_key": "API_KEY", "bins": [{"w": 5,"h": 0,"d": 5,"id": "Bin1","find": "h", "type":"pallet"},{"w": 3,"h": 30,"d": 3,"id": "Bin2","find": "h", "type":"box"}],"items": [{"w": 5,"h": 3,"d": 2,"q": 2,"vr": 1,"id": "Item1"},{"w": 3,"h": 3,"d": 3,"q": 3,"vr": 1,"id": "Item2"}], "params": {"images_background_color": "255,255,255", "images_bin_border_color": "59,59,59", "images_bin_fill_color": "230,230,230", "images_item_border_color": "22,22,22", "images_item_fill_color": "255,193,6", "images_item_back_border_color": "22,22,22", "images_sbs_last_item_fill_color": "177,14,14", "images_sbs_last_item_border_color": "22,22,22", "images_format": "svg", "images_width": 50, "images_height": 50, "images_source": "file", "stats": 0, "item_coordinates": 1, "images_complete": 1, "images_sbs": 1, "images_separated": 0, "images_version":2}} params = urllib.urlencode( {'query':json.dumps(data)} ) headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"} conn.request( "POST", "/packer/findSmallestBin", params, headers ) content = conn.getresponse( ).read( ) conn.close( ) print content

package javaapplication1;

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.ProtocolException; import java.net.URL; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map;; import org.json.simple.JSONObject; import org.springframework.web.client.RestTemplate;

public class JavaApplication1 {

/** * @param args the command line arguments */ public static void main(String[] args) throws MalformedURLException, ProtocolException, IOException { RestTemplate restTemplate = new RestTemplate(); JSONObject json = new JSONObject();

//SET BINS List<Map<String , String>> bins = new ArrayList<Map<String,String>>();

Map<String, String> bin1 = new HashMap<String, String>(); bin1.put("id", "Bin1"); bin1.put("h", "0"); bin1.put("w", "5"); bin1.put("d", "5"); bin1.put("find", "h"); bin1.put("type", "pallet"); bins.add(bin1); Map<String, String> bin2 = new HashMap<String, String>(); bin2.put("id", "Bin2"); bin2.put("h", "30"); bin2.put("w", "5"); bin2.put("d", "5"); bin2.put("find", "h"); bin2.put("type", "pallet"); bins.add(bin2);

//SET ITEMS List<Map<String , String>> items = new ArrayList<Map<String,String>>(); Map<String, String> item1 = new HashMap<String, String>(); item1.put("id", "Item1"); item1.put("w", "5"); item1.put("h", "3"); item1.put("d", "2"); item1.put("q", "2"); item1.put("vr", "1"); items.add(item1); Map<String, String> item2 = new HashMap<String, String>(); item2.put("id", "Item2"); item2.put("w", "3"); item2.put("h", "3"); item2.put("d", "3"); item2.put("wg", "1"); item2.put("q", "3"); item2.put("vr", "1"); items.add(item2);

//SET PARAMETERS Map <String , String > params = new HashMap <String , String >(); params.put("images_background_color", "255,255,255") params.put("images_bin_border_color", "59,59,59") params.put("images_bin_fill_color", "230,230,230") params.put("images_item_border_color", "22,22,22") params.put("images_item_fill_color", "255,193,6") params.put("images_item_back_border_color", "22,22,22") params.put("images_sbs_last_item_fill_color", "177,14,14") params.put("images_sbs_last_item_border_color", "22,22,22") params.put("images_format", "svg") params.put("images_width", "50") params.put("images_height", "50") params.put("images_source", "file") params.put("stats", "0") params.put("item_coordinates", "1") params.put("images_complete", "1") params.put("images_sbs", "1") params.put("images_separated", "0") params.put("images_version", 2)

//ADD ELEMENTS TO JSON json.put("username", "YOUR_USERNAME"); json.put("api_key", "YOUR_API_KEY"); json.put("items", items); json.put("bins", bins); json.put("params", params);

//CALL QUERY HttpURLConnection conn; URL addr = new URL("https://global-api.3dbinpacking.com/packer/findSmallestBin"); conn = (HttpURLConnection) addr.openConnection(); conn.setRequestMethod("POST"); conn.setDoOutput(true); conn.connect(); OutputStreamWriter osw = new OutputStreamWriter(conn.getOutputStream());

// prepare POST body String query = "query=" + json.toString();

osw.write(query); osw.flush(); osw.close();

BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream())); String response_json = br.readLine();

//DO SOMETHING COOL WITH THE RESPONSE System.out.println(response_json); } }

string data;
System.Net.HttpWebRequest req = System.Net.WebRequest.Create("https://global-api.3dbinpacking.com/packer/findSmallestBin") as System.Net.HttpWebRequest;

var request_data = new {username = "YOUR_USERNAME", api_key = "YOUR_API_KEY", items = new[] { new { id = "Item1", w = "5", h = "3", d = "2", wg = "2", q = "2", vr = "1"}, new { id = "Item2", w = "3", h = "3", d = "3", wg = "1", q = "3", vr = "1"} }, bins = new[] { new { id = "Bin1", h = "0", w = "5", d = "5", type = "pallet"}, new { id = "Bin2", h = "30", w = "5", d = "5", type = "box"} },

@params = new { images_background_color = "255,255,255", images_bin_border_color = "59,59,59", images_bin_fill_color = "230,230,230", images_item_border_color = "22,22,22", images_item_fill_color = "255,193,6", images_item_back_border_color = "22,22,22", images_sbs_last_item_fill_color = "177,14,14", images_sbs_last_item_border_color = "22,22,22", images_format = "svg", images_width = "50", images_height = "50", images_source = "file", stats = "0", item_coordinates = "1", images_complete = "1", images_sbs = "1", images_separated = "0", images_version = "2" } };

string json_str = JsonConvert.SerializeObject(request_data);

string queryParam = "query="+json_str;

byte[] postBytes = System.Text.Encoding.ASCII.GetBytes(queryParam); req.Method = "POST"; req.ContentType = "application/x-www-form-urlencoded"; req.ContentLength = postBytes.Length;

System.IO.Stream postStream = req.GetRequestStream(); postStream.Write(postBytes, 0, postBytes.Length); postStream.Close();

X509Certificate Cert = X509Certificate2.CreateFromCertFile("path_to_pem_key\global-api.3dbinpacking.com.pem"); req.ClientCertificates.Add(Cert);

using (System.Net.HttpWebResponse response = req.GetResponse() as System.Net.HttpWebResponse) { System.IO.StreamReader reader = new System.IO.StreamReader(response.GetResponseStream()); data = reader.ReadToEnd(); }

nom de param Description type de données
username
(requis)
nom d'utilisateur. Vous pouvez trouver la touche API dans la section ' / Profile settings / API access' après la connexion dans https : //www.3dbinpacking.com/en/customer/api-data chaîne
api_key
(requis)
clé API. Vous pouvez trouver la clé API dans la section '/ Profile settings/API access' après la connexion dans https://www.3dbinpacking.com/en/customer/api-data chaîne
[bins]
(requis)
tableau des paramètres d'espace d'emballage réseau
[items]
(requis)
translation missing: fr.params_array_items réseau
params tableau des paramètres de demande supplémentaires réseau

[bins] - Détails du tableau des espaces d'emballage

nom de param Description type de données info
id
(requis)
ID d'espace d’emballage. Le numéro ou le code que vous utilisez pour identifier l'espace d'emballage. chaîne
w
(requis)
Largeur d'espace d'emballage flottant
h
(requis)
Hauteur d'espace d'emballage flottant
d
(requis)
Profondeur / longueur d'espace d'emballage flottant
find
(requis)
Il indique quelle dimension du conteneur doit être trouvée chaîne Valeurs disponibles:
'W' - signifie que l'algorithme calculera la largeur du conteneur,
'H' - signifie que l'algorithme calculera la hauteur du conteneur,
'D' – signifie que l'algorithme calculera la profondeur du conteneur
type
Seulement avec images_version: 2 le paramètre
Spécifie si l'image sera présentée sous la forme d'un carton ou d'une palette translation missing: fr.params_type_stringt

[items] - Détails du tableau des produits

nom de param Description type de données info
id
(requis)
ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w
(requis)
La largeur de l'élément entier ou flottant
h
(requis)
La hauteur de l'élément entier ou flottant
d
(requis)
la profondeur ou la longueur de l'article entier ou flottant
wg le poids de l'article entier ou flottant
vr Rotation verticale. Les informations si l'article peut être tourné verticalement. entier Rotation verticale. Les informations si l'article peut être tourné verticalement.
q
(requis)
la quantité des mêmes articles à emballer entier
acceptable_bins Définissez les espaces d'emballage qui peuvent être utilisés pour emballer les éléments. Si le paramètre n'est pas défini, tous les espaces d'emballage peuvent être utilisés. Les valeurs étant donné doivent contenir l'ID des espaces d'emballage inclus dans le paramètre 'bacs'. réseau
item_colors_schema Définissez quel type de schéma de couleur doit être utilisé chaîne Valeurs disponibles:
Par défaut - Les couleurs définies dans les paramètres suivants seront utilisées 'images_item_border_color' et 'images_bin_fill_color',
'random' - x,
'item' - x
item_fill_color Couleur de remplissage d'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
item_border_color Couleur de la bordure de l'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'

params - Paramètres optionnels

nom de param Description type de données info
images_version Version du générateur d'images entier Valeurs disponibles: [1 | 2]
images_width translation missing: fr.images_width_d entier Valeurs disponibles: 1 - 250
images_height Hauteur maximale des images générées entier Valeurs disponibles: 1 - 250
images_background_color couleur d'arrière-plan chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_border_color
Seulement avec images_version: 1 le paramètre
Couleur de bordure d'espace d'emballage chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_dashed_line_color
Seulement avec images_version: 1 le paramètre
Couleur de la bordure avant de l’espace d’emballage (en pointillés) chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_fill_color Couleur de remplissage d'espace d'emballage chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_item_fill_color Couleur de remplissage d'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_item_border_color
Seulement avec images_version: 1 le paramètre
Couleur de la bordure de l'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_sbs_last_item_fill_color Remplissez la couleur du dernier élément sur les images montrant un processus d'emballage 'étape par étape' chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_sbs_last_item_border_color
Seulement avec images_version: 1 le paramètre
Couleur de bordure du dernier élément sur des images montrant l'emballage 'étape par étape' chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_format format d'images chaîne Valeurs disponibles: [png, svg]
images_sbs Générer des images montrant un processus d'emballage 'étape par étape' entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant un processus d'emballage 'étape par étape' ne seront pas générées,
1 - signifie que les images montrant un processus d'emballage 'étape par étape' seront générées
images_complete Générer des images montrant un résultat d'emballage final entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant le résultat de l'emballage final ne seront pas générées,
1 - signifie que les images montrant le résultat de l'emballage final seront générées
images_separated Générez des images montrant séparément le placement de chaque élément entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant le placement de chaque élément séparément ne seront pas générées,
1 - signifie que les images montrant le placement de chaque élément séparément seront générées
item_coordinates Retour Coordonnées (x, y, z) pour chaque élément entier Valeurs disponibles:
0 [par défaut] - signifie que les coordonnées du placement de chaque élément ne seront pas retournées,
1 - que les coordonnées du placement de chaque élément seront retournées
stats Renvoyez les statistiques d'un processus d'emballage (par exemple, temps de génération d'images) entier Valeurs disponibles:
0 [par défaut] - signifie que les statistiques d'un processus d'emballage ne seront pas retournées,
1 - signifie que les statistiques d'un processus d'emballage seront retournées

translation missing: fr.response_parameters_h

RESPONSE

{
    "response":{
        "id":"response_id",
        "bins_packed":[
            {
                "bin_data":{
                    "w":5,
                    "h":9,
                    "d":5,
                    "id":"Bin1",
                    "used_space":62.6667,
                    "weight":0,
                    "gross_weight":0,
                    "used_weight":100,
                    "stack_height":9,
                    "order_id":null
                },
                "image_complete":"image_url.svg",
                "items":[
                    {
                        "id":"Item1",
                        "w":5,
                        "h":3,
                        "d":2,
                        "wg":0,
                        "image_sbs":"image_url.svg",
                        "coordinates":{"x1":0,"y1":0,"z1":0,"x2":2,"y2":5,"z2":3}
                    },{
                        "id":"Item2",
                        "w":3,
                        "h":3,
                        "d":3,
                        "wg":0,
                        "image_sbs":"image_url.svg",
                        "coordinates":{"x1":2,"y1":0,"z1":0,"x2":5,"y2":3,"z2":3}
                    },{
                        "id":"Item1",
                        "w":5,
                        "h":3,
                        "d":2,
                        "wg":0,
                        "image_sbs":"image_url.svg",
                        "coordinates":{"x1":0,"y1":5,"z1":0,"x2":2,"y2":8,"z2":5}
                    },{
                        "id":"Item2",
                        "w":3,
                        "h":3,
                        "d":3,
                        "wg":0,
                        "image_sbs":"image_url.svg",
                        "coordinates":{"x1":2,"y1":3,"z1":0,"x2":5,"y2":6,"z2":3}
                    },{
                        "id":"Item2",
                        "w":3,
                        "h":3,
                        "d":3,
                        "wg":0,
                        "image_sbs":"image_url.svg",
                        "coordinates":{"x1":2,"y1":6,"z1":0,"x2":5,"y2":9,"z2":3}
                    }
                ],
                "not_packed_items":[]
            },{
                "bin_data":{
                    "w":3,
                    "h":19,
                    "d":3,
                    "id":"Bin2",
                    "used_space":82.4561,
                    "weight":0,
                    "gross_weight":0,
                    "used_weight":100,
                    "stack_height":19,
                    "order_id":null
                },
                "image_complete":"image_url.svg",
                "items":[
                    {
                        "id":"Item2",
                        "w":3,
                        "h":3,
                        "d":3,
                        "wg":0,
                        "image_sbs":"image_url.svg",
                        "coordinates":{"x1":0,"y1":0,"z1":0,"x2":3,"y2":3,"z2":3}
                    },{
                        "id":"Item2",
                        "w":3,
                        "h":3,
                        "d":3,
                        "wg":0,
                        "image_sbs":"image_url.svg",
                        "coordinates":{"x1":0,"y1":3,"z1":0,"x2":3,"y2":6,"z2":3}
                    },{
                        "id":"Item2",
                        "w":3,
                        "h":3,
                        "d":3,
                        "wg":0,
                        "image_sbs":"image_url.svg",
                        "coordinates":{"x1":0,"y1":6,"z1":0,"x2":3,"y2":9,"z2":3}
                    },{
                        "id":"Item1",
                        "w":5,
                        "h":3,
                        "d":2,
                        "wg":0,
                        "image_sbs":"image_url.svg",
                        "coordinates":{"x1":0,"y1":9,"z1":0,"x2":3,"y2":14,"z2":2}
                    },{
                        "id":"Item1",
                        "w":5,
                        "h":3,
                        "d":2,
                        "wg":0,
                        "image_sbs":"image_url.svg",
                        "coordinates":{"x1":0,"y1":14,"z1":0,"x2":3,"y2":19,"z2":2}
                    }
                ],
                "not_packed_items":[]
            }
        ],
        "errors":[],
        "status":1,
        "not_packed_items":[]
    }
}

nom de param Description type de données info
[bins_packed] Liste des articles emballés réseau
errors Liste des erreurs possibles qui peuvent survenir dans la demande réseau Exemple: [{'niveau'}]; Valeurs retournées possibles: 'critique' - erreur critique - désactivation de l'emballage, 'avertissement' - avertissement concernant les données incorrectes dans la demande
status Statut de réponse entier Valeurs retournées possibles:
1 - La réponse n'a pas inclus d'erreurs critiques,
0 - La réponse a inclus des erreurs critiques. * Erreur critique - l'erreur de désactivation de l'emballage.Elle peut être due à l’absence d’un des paramètres requis ('username','api_key') ou à une valeure incorrecte du paramètre (par exemple: un champ, qui devrait contenir un nombre, contient une chaîne).
[not_packed_items] la liste d’éléments incapables d'être emballés, par exemple Paramètres incorrects d’entrée, poids excessif ou taille réseau

[bins_packed] - la liste des espaces d'emballage à emballer

nom de param Description type de données
bin_data Détails de l'espace d'emballage à emballer réseau
image_complete translation missing: fr.response_image_complete url
[items] translation missing: fr.response_items réseau
[not_packed_items] éléments incapables d'être emballés dans l'espace d'emballage réseau

[bin_data] - détails de l'espace d'emballage à emballer

nom de param Description type de données
id ID d'espace d’emballage. Le numéro ou le code que vous utilisez pour identifier l'espace d'emballage. chaîne
w Largeur d'espace d'emballage entier ou flottant
h Hauteur d'espace d'emballage entier ou flottant
d Profondeur / longueur d'espace d'emballage entier ou flottant
used_space pourcentage d'espace d'emballage utilisé entier ou flottant
weight poids des éléments à emballer entier ou flottant
gross_weight poids des articles à emballer + poids de l'espace d'emballage entier ou flottant
used_weight pourcentage du poids autorisé utilisé entier ou flottant
stack_height la hauteur des éléments empilés entier ou flottant

[items] - la liste des éléments à emballer

nom de param Description type de données
id ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w La largeur de l'élément entier ou flottant
h La hauteur de l'élément entier ou flottant
d la profondeur ou la longueur de l'article entier ou flottant
wg le poids de l'article entier ou flottant
image_separated translation missing: fr.response_params_image_separated url
image_sbs translation missing: fr.response_params_image_sbs url
coordinates translation missing: fr.response_params_coordinates {"x1":0,"y1":0,"z1":0,"x2":5,"y2":3,"z2":2}

[not_packed_items] - la liste des éléments incapables d'être emballés

nom de param Description type de données
id ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w La largeur de l'élément entier ou flottant
h La hauteur de l'élément entier ou flottant
d la profondeur ou la longueur de l'article entier ou flottant
q la quantité des mêmes articles à emballer entier
wg le poids de l'article entier ou flottant

Trouver une Taille de Carton

Utilisez l’outil Trouver une taille de Carton pour maximiser l'utilisation de l'espace et calculer la bonne taille de carton pour votre emballage.

URL

Paramètres de demande

Paramètres requis

REQUEST

{
    "bins": [
        {
            "w": 0,
            "h": 0,
            "d": 0,
            "id": "Bin1",
            "type":"pallet"
        }
    ],
    "items": [
        {
            "w": 5,
            "h": 3,
            "d": 2,
            "q": 2,
            "vr": 1,
            "id": "Item1"
        },{
            "w": 3,
            "h": 3,
            "d": 3,
            "q": 3,
            "vr": 1,
            "id": "Item2"
        }
    ],
    "username": "YOUR_USERNAME",
    "api_key": "YOUR_API_KEY",
    "params": {
        "images_background_color": "255,255,255",
        "images_bin_border_color": "59,59,59",
        "images_bin_fill_color": "230,230,230",
        "images_item_border_color": "214,79,79",
        "images_item_fill_color": "177,14,14",
        "images_item_back_border_color": "215,103,103",
        "images_sbs_last_item_fill_color": "99,93,93",
        "images_sbs_last_item_border_color": "145,133,133",
        "images_width": 100,
        "images_height": 100,
        "images_source": "file",
        "images_sbs": 1,
        "item_coordinates": 1,
        "images_complete": 1,
        "images_separated": 1,
        "images_version": 2
    }
}
curl -X POST \
-H "Content-Type: application/json" \
-d '{"username": "USERNAME", "api_key": "API_KEY", "bins": [{"w": 0,"h": 0,"d": 0,"id": "Bin1", "type":"pallet"}],"items": [{"w": 5,"h": 3,"d": 2,"q": 2,"vr": 1,"id": "Item1"},{"w": 3,"h": 3,"d": 3,"q": 3,"vr": 1,"id": "Item2"}], "params": {"images_background_color": "255,255,255", "images_bin_border_color": "59,59,59", "images_bin_fill_color": "230,230,230", "images_item_border_color": "22,22,22", "images_item_fill_color": "255,193,6", "images_item_back_border_color": "22,22,22", "images_sbs_last_item_fill_color": "177,14,14", "images_sbs_last_item_border_color": "22,22,22", "images_format": "svg", "images_width": 50, "images_height": 50, "images_source": "file", "item_coordinates": 1, "images_complete": 1, "images_sbs": 1, "images_separated": 0, "images_version":2}}' \
https://global-api.3dbinpacking.com/packer/findBinSize \
-k
<?php

$data = array( 'bins' => array( array( 'id' => 'Bin1', 'h' => '0', 'w' => '0', 'd' => '0', 'type' => 'pallet' ) ), 'items' => array( array( 'id' => 'Item1', 'w' => '5', 'h' => '3', 'd' => '2', 'q' => '2', 'vr' => '1' ), array( 'id' => 'Item2', 'w' => '3', 'h' => '3', 'd' => '3', 'q' => '3', 'vr' => '1' ) ), 'username' => 'YOUR_USERNAME', 'api_key' => 'YOUR_API_KEY', 'params' => array( 'images_background_color' => '255,255,255', 'images_bin_border_color' => '59,59,59', 'images_bin_fill_color' => '230,230,230', 'images_item_border_color' => '22,22,22', 'images_item_fill_color' => '255,193,6', 'images_item_back_border_color' => '22,22,22', 'images_sbs_last_item_fill_color' => '177,14,14', 'images_sbs_last_item_border_color' => '22,22,22', 'images_format' => 'svg', 'images_width' => '50', 'images_height' => '50', 'images_source' => 'file', 'item_coordinates' => '1', 'images_complete' => '1', 'images_sbs' => '1', 'images_separated' => '0', 'images_version' => 2 ) ); $query = json_encode($data);

$url = "https://global-api.3dbinpacking.com/packer/findBinSize"; $prepared_query = 'query='.$query; $ch = curl_init($url); curl_setopt( $ch, CURLOPT_POST, true ); curl_setopt( $ch, CURLOPT_POSTFIELDS, $prepared_query ); curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false ); curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, false ); curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 ); $resp = curl_exec($ch); if (curl_errno($ch)) { echo 'Error #' . curl_errno($ch) . ': ' . curl_error($ch).'<br>'; } curl_close($ch);

$response = json_decode($resp,true); // display errors if(isset($response['response']['errors'])){ foreach($response['response']['errors'] as $error){ echo $error['message'].'<br>'; } } // display data if( $response['response']['status'] > -1 ){ $b_packed= $response['response']['bins_packed']; foreach ($b_packed as $bin){ echo "<h2>Bin id:{$bin['bin_data']['id']}</h2> <p> {$bin['bin_data']['w']} x {$bin['bin_data']['h']} x {$bin['bin_data']['d']}</p> <p> Weight:{$bin['bin_data']['weight']}</p> <p> Used weight:{ $bin['bin_data']['used_weight'] }</p> <img src=\"{$bin['image_complete']}\"> <h2>Items packed in this bin:</h2>"; $items = $bin['items']; echo '<table style="text-align: center"> <tr><th>Item id</th> <th>Item dimensions</th> <th>Item weight</th> <th>Separated item</th> <th>Step by step</th></tr>'; foreach ( $items as $item){ echo "<tr><td>{$item['id']}</td> <td> {$item['w']} x {$item['h']} x {$bin['bin_data']['d']}</td> <td> {$item['wg']}</td> <td><img src=\"{$item['image_separated']}\"></td> <td><img src=\"{$item['image_sbs']}\"></td> </tr>"; } echo '</table>'; echo '<hr>';

} }

#!/usr/bin/python

import httplib
import urllib
import json

conn = httplib.HTTPConnection(host='global-api.3dbinpacking.com', port=80) data = {"username": "USERNAME", "api_key": "API_KEY", "bins": [{"w": 0,"h": 0,"d": 0,"id": "Bin1", "type":"pallet"}],"items": [{"w": 5,"h": 3,"d": 2,"q": 2,"vr": 1,"id": "Item1"},{"w": 3,"h": 3,"d": 3,"q": 3,"vr": 1,"id": "Item2"}], "params": {"images_background_color": "255,255,255", "images_bin_border_color": "59,59,59", "images_bin_fill_color": "230,230,230", "images_item_border_color": "22,22,22", "images_item_fill_color": "255,193,6", "images_item_back_border_color": "22,22,22", "images_sbs_last_item_fill_color": "177,14,14", "images_sbs_last_item_border_color": "22,22,22", "images_format": "svg", "images_width": 50, "images_height": 50, "images_source": "file", "item_coordinates": 1, "images_complete": 1, "images_sbs": 1, "images_separated": 0, "images_version":2}} params = urllib.urlencode( {'query':json.dumps(data)} ) headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"} conn.request( "POST", "/packer/findBinSize", params, headers ) content = conn.getresponse( ).read( ) conn.close( ) print content

package javaapplication1;

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.ProtocolException; import java.net.URL; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map;; import org.json.simple.JSONObject; import org.springframework.web.client.RestTemplate;

public class JavaApplication1 {

/** * @param args the command line arguments */ public static void main(String[] args) throws MalformedURLException, ProtocolException, IOException { RestTemplate restTemplate = new RestTemplate(); JSONObject json = new JSONObject();

//SET BINS List<Map<String , String>> bins = new ArrayList<Map<String,String>>();

Map<String, String> bin1 = new HashMap<String, String>(); bin1.put("id", "Bin1"); bin1.put("h", "0"); bin1.put("w", "0"); bin1.put("d", "0"); bin1.put("type", "pallet"); bins.add(bin1);

//SET ITEMS List<Map<String , String>> items = new ArrayList<Map<String,String>>(); Map<String, String> item1 = new HashMap<String, String>(); item1.put("id", "Item1"); item1.put("w", "5"); item1.put("h", "3"); item1.put("d", "2"); item1.put("q", "2"); item1.put("vr", "1"); items.add(item1); Map<String, String> item2 = new HashMap<String, String>(); item2.put("id", "Item2"); item2.put("w", "3"); item2.put("h", "3"); item2.put("d", "3"); item2.put("q", "3"); item2.put("vr", "1"); items.add(item2);

//SET PARAMETERS Map <String , String > params = new HashMap <String , String >(); params.put("images_background_color", "255,255,255") params.put("images_bin_border_color", "59,59,59") params.put("images_bin_fill_color", "230,230,230") params.put("images_item_border_color", "22,22,22") params.put("images_item_fill_color", "255,193,6") params.put("images_item_back_border_color", "22,22,22") params.put("images_sbs_last_item_fill_color", "177,14,14") params.put("images_sbs_last_item_border_color", "22,22,22") params.put("images_format", "svg") params.put("images_width", "50") params.put("images_height", "50") params.put("images_source", "file") params.put("item_coordinates", "1") params.put("images_complete", "1") params.put("images_sbs", "1") params.put("images_separated", "0") params.put("images_version", "2")

//ADD ELEMENTS TO JSON json.put("username", "YOUR_USERNAME"); json.put("api_key", "YOUR_API_KEY"); json.put("items", items); json.put("bins", bins); json.put("params", params);

//CALL QUERY HttpURLConnection conn; URL addr = new URL("https://global-api.3dbinpacking.com/packer/findBinSize"); conn = (HttpURLConnection) addr.openConnection(); conn.setRequestMethod("POST"); conn.setDoOutput(true); conn.connect(); OutputStreamWriter osw = new OutputStreamWriter(conn.getOutputStream());

// prepare POST body String query = "query=" + json.toString();

osw.write(query); osw.flush(); osw.close();

BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream())); String response_json = br.readLine();

//DO SOMETHING COOL WITH THE RESPONSE System.out.println(response_json); } }

string data;
System.Net.HttpWebRequest req = System.Net.WebRequest.Create("https://global-api.3dbinpacking.com/packer/findBinSize") as System.Net.HttpWebRequest;

var request_data = new {username = "YOUR_USERNAME", api_key = "YOUR_API_KEY", items = new[] { new { id = "Item1", w = "5", h = "3", d = "2", q = "2", vr = "1"}, new { id = "Item2", w = "3", h = "3", d = "3", q = "3", vr = "1"} }, bins = new[] { new { id = "Bin1", h = "0", w = "0", d = "0", type = "pallet"} },

@params = new { images_background_color = "255,255,255", images_bin_border_color = "59,59,59", images_bin_fill_color = "230,230,230", images_item_border_color = "22,22,22", images_item_fill_color = "255,193,6", images_item_back_border_color = "22,22,22", images_sbs_last_item_fill_color = "177,14,14", images_sbs_last_item_border_color = "22,22,22", images_format = "svg", images_width = "50", images_height = "50", images_source = "file", item_coordinates = "1", images_complete = "1", images_sbs = "1", images_separated = "0", images_version = "1" } };

string json_str = JsonConvert.SerializeObject(request_data);

string queryParam = "query="+json_str;

byte[] postBytes = System.Text.Encoding.ASCII.GetBytes(queryParam); req.Method = "POST"; req.ContentType = "application/x-www-form-urlencoded"; req.ContentLength = postBytes.Length;

System.IO.Stream postStream = req.GetRequestStream(); postStream.Write(postBytes, 0, postBytes.Length); postStream.Close();

X509Certificate Cert = X509Certificate2.CreateFromCertFile("path_to_pem_key\global-api.3dbinpacking.com.pem"); req.ClientCertificates.Add(Cert);

using (System.Net.HttpWebResponse response = req.GetResponse() as System.Net.HttpWebResponse) { System.IO.StreamReader reader = new System.IO.StreamReader(response.GetResponseStream()); data = reader.ReadToEnd(); }

nom de param Description type de données
username
(requis)
nom d'utilisateur. Vous pouvez trouver la touche API dans la section ' / Profile settings / API access' après la connexion dans https : //www.3dbinpacking.com/en/customer/api-data chaîne
api_key
(requis)
clé API. Vous pouvez trouver la clé API dans la section '/ Profile settings/API access' après la connexion dans https://www.3dbinpacking.com/en/customer/api-data chaîne
[bins]
(requis)
tableau des paramètres d'espace d'emballage réseau
[items]
(requis)
translation missing: fr.params_array_items réseau
params tableau des paramètres de demande supplémentaires réseau

[bins] - Détails du tableau des espaces d'emballage

nom de param Description type de données
id
(requis)
ID d'espace d’emballage. Le numéro ou le code que vous utilisez pour identifier l'espace d'emballage. chaîne
w
(requis)
Packing space max. width
(requis)
flottant
h
(requis)
Packing space max. height flottant
d
(requis)
Packing space max. depth/length flottant
type
Seulement avec images_version: 2 le paramètre
Spécifie si l'image sera présentée sous la forme d'un carton ou d'une palette translation missing: fr.params_type_stringt

[items] - Détails du tableau des produits

nom de param Description type de données info
id
(requis)
ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w
(requis)
La largeur de l'élément entier ou flottant
h
(requis)
La hauteur de l'élément entier ou flottant
d
(requis)
la profondeur ou la longueur de l'article entier ou flottant
wg le poids de l'article entier ou flottant
vr Rotation verticale. Les informations si l'article peut être tourné verticalement. entier Rotation verticale. Les informations si l'article peut être tourné verticalement.
q
(requis)
la quantité des mêmes articles à emballer entier
item_colors_schema Définissez quel type de schéma de couleur doit être utilisé chaîne
item_fill_color Couleur de remplissage d'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
item_border_color Couleur de la bordure de l'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'

params - Paramètres optionnels

nom de param Description type de données info
images_version Version du générateur d'images entier Valeurs disponibles: [1 | 2]
images_width translation missing: fr.images_width_d entier Valeurs disponibles: 1 - 250
images_height Hauteur maximale des images générées entier Valeurs disponibles: 1 - 250
images_background_color couleur d'arrière-plan chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_border_color
Seulement avec images_version: 1 le paramètre
Couleur de bordure d'espace d'emballage chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_dashed_line_color
Seulement avec images_version: 1 le paramètre
Couleur de la bordure avant de l’espace d’emballage (en pointillés) chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_fill_color Couleur de remplissage d'espace d'emballage chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_item_fill_color Couleur de remplissage d'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_item_border_color
Seulement avec images_version: 1 le paramètre
Couleur de la bordure de l'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_sbs_last_item_fill_color Remplissez la couleur du dernier élément sur les images montrant un processus d'emballage 'étape par étape' chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_sbs_last_item_border_color
Seulement avec images_version: 1 le paramètre
Couleur de bordure du dernier élément sur des images montrant l'emballage 'étape par étape' chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_format format d'images chaîne Valeurs disponibles: [png, svg]
images_sbs Générer des images montrant un processus d'emballage 'étape par étape' entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant un processus d'emballage 'étape par étape' ne seront pas générées,
1 - signifie que les images montrant un processus d'emballage 'étape par étape' seront générées
images_complete Générer des images montrant un résultat d'emballage final entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant le résultat de l'emballage final ne seront pas générées,
1 - signifie que les images montrant le résultat de l'emballage final seront générées
images_separated Générez des images montrant séparément le placement de chaque élément entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant le placement de chaque élément séparément ne seront pas générées,
1 - signifie que les images montrant le placement de chaque élément séparément seront générées
item_coordinates Retour Coordonnées (x, y, z) pour chaque élément entier Valeurs disponibles:
0 [par défaut] - signifie que les coordonnées du placement de chaque élément ne seront pas retournées,
1 - que les coordonnées du placement de chaque élément seront retournées
stats Renvoyez les statistiques d'un processus d'emballage (par exemple, temps de génération d'images) entier Valeurs disponibles:
0 [par défaut] - signifie que les statistiques d'un processus d'emballage ne seront pas retournées,
1 - signifie que les statistiques d'un processus d'emballage seront retournées

translation missing: fr.response_parameters_h

RESPONSE

{
    "response":{
        "id":"response_id",
        "bins_packed":[
            {
                "bin_data":{
                    "w":8,
                    "h":3,
                    "d":7,
                    "id":null,
                    "used_space":83.9286,
                    "weight":0,
                    "gross_weight":0,
                    "used_weight":100,
                    "stack_height":3
                },
                "image_complete":"image_url.png",
                "items":[
                    {
                        "id":"Item1",
                        "w":5,
                        "h":3,
                        "d":2,
                        "wg":0,
                        "image_separated":"image_url.png",
                        "image_sbs":"image_url.png",
                        "coordinates":{"x1":0,"y1":0,"z1":0,"x2":5,"y2":3,"z2":2}
                    },{
                        "id":"Item1",
                        "w":5,
                        "h":3,
                        "d":2,
                        "wg":0,
                        "image_separated":"image_url.png",
                        "image_sbs":"image_url.png",
                        "coordinates":{"x1":0,"y1":0,"z1":2,"x2":5,"y2":3,"z2":4}
                    },{
                        "id":"Item2",
                        "w":3,
                        "h":3,
                        "d":3,
                        "wg":0,
                        "image_separated":"image_url.png",
                        "image_sbs":"image_url.png",
                        "coordinates":{"x1":2,"y1":0,"z1":4,"x2":5,"y2":3,"z2":7}
                    },{
                        "id":"Item2",
                        "w":3,
                        "h":3,
                        "d":3,
                        "wg":0,
                        "image_separated":"image_url.png",
                        "image_sbs":"image_url.png",
                        "coordinates":{"x1":5,"y1":0,"z1":0,"x2":8,"y2":3,"z2":3}
                    },{
                        "id":"Item2",
                        "w":3,
                        "h":3,
                        "d":3,
                        "wg":0,
                        "image_separated":"image_url.png",
                        "image_sbs":"image_url.png",
                        "coordinates":{"x1":5,"y1":0,"z1":3,"x2":8,"y2":3,"z2":6}
                    }
                ]
            }
        ],
        "errors":[],
        "status":1,
        "not_packed_items":[]
    }
}

nom de param Description type de données info
[bins_packed] Liste des articles emballés réseau
errors Liste des erreurs possibles qui peuvent survenir dans la demande réseau Exemple: [{'niveau'}]; Valeurs retournées possibles: 'critique' - erreur critique - désactivation de l'emballage, 'avertissement' - avertissement concernant les données incorrectes dans la demande
status Statut de réponse entier Valeurs retournées possibles:
1 - La réponse n'a pas inclus d'erreurs critiques,
0 - La réponse a inclus des erreurs critiques. * Erreur critique - l'erreur de désactivation de l'emballage.Elle peut être due à l’absence d’un des paramètres requis ('username','api_key') ou à une valeure incorrecte du paramètre (par exemple: un champ, qui devrait contenir un nombre, contient une chaîne).
[not_packed_items] la liste d’éléments incapables d'être emballés, par exemple Paramètres incorrects d’entrée, poids excessif ou taille réseau

[bins_packed] - la liste des espaces d'emballage à emballer

nom de param Description type de données
bin_data Détails de l'espace d'emballage à emballer réseau
image_complete translation missing: fr.response_image_complete url
[items] translation missing: fr.response_items réseau
[not_packed_items] éléments incapables d'être emballés dans l'espace d'emballage réseau

[bin_data] - détails de l'espace d'emballage à emballer

nom de param Description type de données
id ID d'espace d’emballage. Le numéro ou le code que vous utilisez pour identifier l'espace d'emballage. chaîne
w Largeur d'espace d'emballage entier ou flottant
h Hauteur d'espace d'emballage entier ou flottant
d Profondeur / longueur d'espace d'emballage entier ou flottant
used_space pourcentage d'espace d'emballage utilisé entier ou flottant
weight poids des éléments à emballer entier ou flottant
gross_weight poids des articles à emballer + poids de l'espace d'emballage entier ou flottant
used_weight pourcentage du poids autorisé utilisé entier ou flottant
stack_height la hauteur des éléments empilés entier ou flottant

[items] - la liste des éléments à emballer

nom de param Description type de données
id ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w La largeur de l'élément entier ou flottant
h La hauteur de l'élément entier ou flottant
d la profondeur ou la longueur de l'article entier ou flottant
wg le poids de l'article entier ou flottant
image_separated translation missing: fr.response_params_image_separated url
image_sbs translation missing: fr.response_params_image_sbs url
coordinates translation missing: fr.response_params_coordinates {"x1":0,"y1":0,"z1":0,"x2":5,"y2":3,"z2":2}

[not_packed_items] - la liste des éléments incapables d'être emballés

nom de param Description type de données
id ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w La largeur de l'élément entier ou flottant
h La hauteur de l'élément entier ou flottant
d la profondeur ou la longueur de l'article entier ou flottant
q la quantité des mêmes articles à emballer entier
wg le poids de l'article entier ou flottant

Essayez les Tailles de Carton

Utilisez l'outil Essayez les Tailles de Carton pour comparer l’emballage des produits dans des cartons ou des espaces d’emballage de différentes tailles.

URL

Paramètres de demande

Paramètres requis

REQUEST

{
    "username":"USERNAME",
    "api_key":"API_KEY",
    "items":
    [
       {"id":"Speakers","w":3,"h":3,"d":3,"wg":2,"q":3,"vr":true},
       {"id":"Bigger item","w":3,"h":3,"d":5,"wg":1,"q":2,"vr":true}
    ],
    "bins":
    [
       {"id":"Pack M","h":4,"w":4,"d":4,"wg":"","max_wg":"", "type":"pallet"},
       {"id":"Pack S","h":3,"w":3,"d":6,"wg":"","max_wg":"", "type":"box"}
    ],
    "params":
    {
       "images_background_color":"255,255,255",
       "images_bin_border_color":"59,59,59",
       "images_bin_fill_color":"230,230,230",
       "images_item_border_color":"22,22,22",
       "images_item_fill_color":"255,193,6",
       "images_item_back_border_color":"22,22,22",
       "images_sbs_last_item_fill_color":"177,14,14",
       "images_sbs_last_item_border_color":"22,22,22",
       "images_format":"svg",
       "images_width":50,
       "images_height":50,
       "images_source":"file",
       "stats":0,
       "item_coordinates":1,
       "images_complete":1,
       "images_sbs":1,
       "images_separated":0,
       "images_version":2
    }
}
curl -X POST \
-H "Content-Type: application/json" \
-d '{"username": "USERNAME", "api_key": "API_KEY", "items": [{"id": "Speakers", "w": 3, "h": 3, "d": 3, "wg": 2, "q": 3, "vr": true},{"id": "Bigger item", "w": 3, "h": 3, "d": 5, "wg": 1, "q": 2, "vr": true}], "bins": [{"id": "Pack M", "h": 4, "w": 4, "d": 4, "wg": "", "max_wg": "", "type":"pallet"},{"id": "Pack S", "h": 3, "w": 3, "d": 6, "wg": "", "max_wg": "", "type":"box"}], "params": {"images_background_color": "255,255,255", "images_bin_border_color": "59,59,59", "images_bin_fill_color": "230,230,230", "images_item_border_color": "22,22,22", "images_item_fill_color": "255,193,6", "images_item_back_border_color": "22,22,22", "images_sbs_last_item_fill_color": "177,14,14", "images_sbs_last_item_border_color": "22,22,22", "images_format": "svg", "images_width": 50, "images_height": 50, "images_source": "file", "stats": 0, "item_coordinates": 1, "images_complete": 1, "images_sbs": 1, "images_separated": 0, "images_version":2}}' \
https://global-api.3dbinpacking.com/packer/pack \
-k
<?php
$data = array(
    'bins' => array(
            array(
                    'id' => 'Pack M',
                    'h' => '4',
                    'w' => '4',
                    'd' => '4',
                    'wg' => '',
                    'max_wg' => '',
                    'type' => 'pallet'
                ),
            array(
                    'id' => 'Pack S',
                    'h' => '3',
                    'w' => '3',
                    'd' => '6',
                    'wg' => '',
                    'max_wg' => '',
                    'type' => 'pallet'
                )
        ),
    'items' => array(
            array(
                    'id' => 'Speakers',
                    'w' => '3',
                    'h' => '3',
                    'd' => '3',
                    'wg' => '2',
                    'q' => '3',
                    'vr' => '1'
                ),
            array(
                    'id' => 'Bigger item',
                    'w' => '3',
                    'h' => '3',
                    'd' => '5',
                    'wg' => '1',
                    'q' => '2',
                    'vr' => '1'
                )
        ),
    'username' => 'YOUR_USERNAME',
    'api_key' => 'YOUR_API_KEY',
    'params' => array(
            'images_background_color' => '255,255,255',
            'images_bin_border_color' => '59,59,59',
            'images_bin_fill_color' => '230,230,230',
            'images_item_border_color' => '22,22,22',
            'images_item_fill_color' => '255,193,6',
            'images_item_back_border_color' => '22,22,22',
            'images_sbs_last_item_fill_color' => '177,14,14',
            'images_sbs_last_item_border_color' => '22,22,22',
            'images_format' => 'svg',
            'images_width' => '50',
            'images_height' => '50',
            'images_source' => 'file',
            'stats' => '0',
            'item_coordinates' => '1',
            'images_complete' => '1',
            'images_sbs' => '1',
            'images_separated' => '0',
            'images_version" => 2
        )
);
$query = json_encode($data);

$url = "https://global-api.3dbinpacking.com/packer/pack"; $prepared_query = 'query='.$query; $ch = curl_init($url); curl_setopt( $ch, CURLOPT_POST, true ); curl_setopt( $ch, CURLOPT_POSTFIELDS, $prepared_query ); curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false ); curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, false ); curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 ); $resp = curl_exec($ch); if (curl_errno($ch)) { echo 'Error #' . curl_errno($ch) . ': ' . curl_error($ch).'<br>'; } curl_close($ch);

$response = json_decode($resp,true); // display errors if(isset($response['response']['errors'])){ foreach($response['response']['errors'] as $error){ echo $error['message'].'<br>'; } } // display data if( $response['response']['status'] > -1 ){ $b_packed= $response['response']['bins_packed']; foreach ($b_packed as $bin){ echo "<h2>Bin id:{$bin['bin_data']['id']}</h2> <p> {$bin['bin_data']['w']} x {$bin['bin_data']['h']} x {$bin['bin_data']['d']}</p> <p> Weight:{$bin['bin_data']['weight']}</p> <p> Used weight:{ $bin['bin_data']['used_weight'] }</p> <img src=\"{$bin['image_complete']}\"> <h2>Items packed in this bin:</h2>"; $items = $bin['items']; echo '<table style="text-align: center"> <tr><th>Item id</th> <th>Item dimensions</th> <th>Item weight</th> <th>Separated item</th> <th>Step by step</th></tr>'; foreach ( $items as $item){ echo "<tr><td>{$item['id']}</td> <td> {$item['w']} x {$item['h']} x {$bin['bin_data']['d']}</td> <td> {$item['wg']}</td> <td><img src=\"{$item['image_separated']}\"></td> <td><img src=\"{$item['image_sbs']}\"></td> </tr>"; } echo '</table>'; echo '<hr>';

} }

#!/usr/bin/python

import httplib
import urllib
import json

conn = httplib.HTTPConnection(host='global-api.3dbinpacking.com', port=80) data = {"username": "USERNAME", "api_key": "API_KEY", "items": [{"id": "Speakers", "w": 3, "h": 3, "d": 3, "wg": 2, "q": 3, "vr": true},{"id": "Bigger item", "w": 3, "h": 3, "d": 5, "wg": 1, "q": 2, "vr": true}], "bins": [{"id": "Pack M", "h": 4, "w": 4, "d": 4, "wg": "", "max_wg": "", "type":"pallet"},{"id": "Pack S", "h": 3, "w": 3, "d": 6, "wg": "", "max_wg": "", "type":"box"}], "params": {"images_background_color": "255,255,255", "images_bin_border_color": "59,59,59", "images_bin_fill_color": "230,230,230", "images_item_border_color": "22,22,22", "images_item_fill_color": "255,193,6", "images_item_back_border_color": "22,22,22", "images_sbs_last_item_fill_color": "177,14,14", "images_sbs_last_item_border_color": "22,22,22", "images_format": "svg", "images_width": 50, "images_height": 50, "images_source": "file", "stats": 0, "item_coordinates": 1, "images_complete": 1, "images_sbs": 1, "images_separated": 0, "images_version":2}} params = urllib.urlencode( {'query':json.dumps(data)} ) headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"} conn.request( "POST", "/packer/pack", params, headers ) content = conn.getresponse( ).read( ) conn.close( ) print content

package javaapplication1;

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.ProtocolException; import java.net.URL; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map;; import org.json.simple.JSONObject; import org.springframework.web.client.RestTemplate;

public class JavaApplication1 {

/** * @param args the command line arguments */ public static void main(String[] args) throws MalformedURLException, ProtocolException, IOException { RestTemplate restTemplate = new RestTemplate(); JSONObject json = new JSONObject();

//SET BINS List<Map<String , String>> bins = new ArrayList<Map<String,String>>();

Map<String, String> bin1 = new HashMap<String, String>(); bin1.put("id", "Pack M"); bin1.put("h", "4"); bin1.put("w", "4"); bin1.put("d", "4"); bin1.put("wg", ""); bin1.put("max_wg", ""); bin1.put("type", "pallet"); bins.add(bin1); Map<String, String> bin2 = new HashMap<String, String>(); bin2.put("id", "Pack S"); bin2.put("h", "3"); bin2.put("w", "3"); bin2.put("d", "6"); bin2.put("wg", ""); bin2.put("max_wg", ""); bin2.put("type", "pallet"); bins.add(bin2);

//SET ITEMS List<Map<String , String>> items = new ArrayList<Map<String,String>>(); Map<String, String> item1 = new HashMap<String, String>(); item1.put("id", "Speakers"); item1.put("w", "3"); item1.put("h", "3"); item1.put("d", "3"); item1.put("wg", "2"); item1.put("q", "3"); item1.put("vr", "1"); items.add(item1); Map<String, String> item2 = new HashMap<String, String>(); item2.put("id", "Bigger item"); item2.put("w", "3"); item2.put("h", "3"); item2.put("d", "5"); item2.put("wg", "1"); item2.put("q", "2"); item2.put("vr", "1"); items.add(item2);

//SET PARAMETERS Map <String , String > params = new HashMap <String , String >(); params.put("images_background_color", "255,255,255") params.put("images_bin_border_color", "59,59,59") params.put("images_bin_fill_color", "230,230,230") params.put("images_item_border_color", "22,22,22") params.put("images_item_fill_color", "255,193,6") params.put("images_item_back_border_color", "22,22,22") params.put("images_sbs_last_item_fill_color", "177,14,14") params.put("images_sbs_last_item_border_color", "22,22,22") params.put("images_format", "svg") params.put("images_width", "50") params.put("images_height", "50") params.put("images_source", "file") params.put("stats", "0") params.put("item_coordinates", "1") params.put("images_complete", "1") params.put("images_sbs", "1") params.put("images_separated", "0") params.put("images_version", "2")

//ADD ELEMENTS TO JSON json.put("username", "YOUR_USERNAME"); json.put("api_key", "YOUR_API_KEY"); json.put("items", items); json.put("bins", bins); json.put("params", params);

//CALL QUERY HttpURLConnection conn; URL addr = new URL("https://global-api.3dbinpacking.com/packer/pack"); conn = (HttpURLConnection) addr.openConnection(); conn.setRequestMethod("POST"); conn.setDoOutput(true); conn.connect(); OutputStreamWriter osw = new OutputStreamWriter(conn.getOutputStream());

// prepare POST body String query = "query=" + json.toString();

osw.write(query); osw.flush(); osw.close();

BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream())); String response_json = br.readLine();

//DO SOMETHING COOL WITH THE RESPONSE System.out.println(response_json); } }

string data;
System.Net.HttpWebRequest req = System.Net.WebRequest.Create("https://global-api.3dbinpacking.com/packer/pack") as System.Net.HttpWebRequest;

var request_data = new {username = "YOUR_USERNAME", api_key = "YOUR_API_KEY", items = new[] { new { id = "Speakers", w = "3", h = "3", d = "3", wg = "2", q = "3", vr = "1"}, new { id = "Bigger item", w = "3", h = "3", d = "5", wg = "1", q = "2", vr = "1"} }, bins = new[] { new { id = "Pack M", h = "4", w = "4", d = "4", wg = "", max_wg = "", type = "pallet"}, new { id = "Pack S", h = "3", w = "3", d = "6", wg = "", max_wg = "", type = "box"} },

@params = new { images_background_color = "255,255,255", images_bin_border_color = "59,59,59", images_bin_fill_color = "230,230,230", images_item_border_color = "22,22,22", images_item_fill_color = "255,193,6", images_item_back_border_color = "22,22,22", images_sbs_last_item_fill_color = "177,14,14", images_sbs_last_item_border_color = "22,22,22", images_format = "svg", images_width = "50", images_height = "50", images_source = "file", stats = "0", item_coordinates = "1", images_complete = "1", images_sbs = "1", images_separated = "0", images_version = "2" } };

string json_str = JsonConvert.SerializeObject(request_data);

string queryParam = "query="+json_str;

byte[] postBytes = System.Text.Encoding.ASCII.GetBytes(queryParam); req.Method = "POST"; req.ContentType = "application/x-www-form-urlencoded"; req.ContentLength = postBytes.Length;

System.IO.Stream postStream = req.GetRequestStream(); postStream.Write(postBytes, 0, postBytes.Length); postStream.Close();

X509Certificate Cert = X509Certificate2.CreateFromCertFile("path_to_pem_key\global-api.3dbinpacking.com.pem"); req.ClientCertificates.Add(Cert);

using (System.Net.HttpWebResponse response = req.GetResponse() as System.Net.HttpWebResponse) { System.IO.StreamReader reader = new System.IO.StreamReader(response.GetResponseStream()); data = reader.ReadToEnd(); }

nom de param Description type de données
username
(requis)
nom d'utilisateur. Vous pouvez trouver la touche API dans la section ' / Profile settings / API access' après la connexion dans https : //www.3dbinpacking.com/en/customer/api-data chaîne
api_key
(requis)
clé API. Vous pouvez trouver la clé API dans la section '/ Profile settings/API access' après la connexion dans https://www.3dbinpacking.com/en/customer/api-data chaîne
[bins]
(requis)
tableau des paramètres d'espace d'emballage réseau
[items]
(requis)
translation missing: fr.params_array_items réseau
params tableau des paramètres de demande supplémentaires of extra request parameters réseau

[bins] - Détails du tableau des espaces d'emballage

nom de param Description type de données
id
(requis)
ID d'espace d’emballage. Le numéro ou le code que vous utilisez pour identifier l'espace d'emballage. chaîne
w
(requis)
Largeur d'espace d'emballage entier ou flottant
h
(requis)
Hauteur d'espace d'emballage entier ou flottant
d
(requis)
Profondeur / longueur d'espace d'emballage entier ou flottant
wg le poids de l'espace d'emballage entier ou flottant
max_wg Le poids maximum que cet espace d'emballage peut contenir. Valeur définie sur '0' (zéro) signifie qu'il n'y a pas de limite de poids entier ou flottant
type
Seulement avec images_version: 2 le paramètre
Spécifie si l'image sera présentée sous la forme d'un carton ou d'une palette translation missing: fr.params_type_stringt

[items] - Détails du tableau des produits

nom de param Description type de données info
id
(requis)
ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w
(requis)
La largeur de l'élément entier ou flottant
h
(requis)
La hauteur de l'élément entier ou flottant
d
(requis)
la profondeur ou la longueur de l'article entier ou flottant
wg le poids de l'article entier ou flottant
vr Rotation verticale. Les informations si l'article peut être tourné verticalement. entier
q
(requis)
la quantité des mêmes articles à emballer entier
item_colors_schema Définissez quel type de schéma de couleur doit être utilisé chaîne Valeurs disponibles:
Par défaut - Les couleurs définies dans les paramètres suivants seront utilisées 'images_item_border_color' et 'images_bin_fill_color',
'random' - x,
'item' - x
item_fill_color Couleur de remplissage d'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
item_border_color Couleur de la bordure de l'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'

params - Paramètres optionnels

nom de param Description type de données info
images_version Version du générateur d'images entier Valeurs disponibles: [1 | 2]
images_width translation missing: fr.images_width_d entier Valeurs disponibles: 1 - 250
images_height Hauteur maximale des images générées entier Valeurs disponibles: 1 - 250
images_background_color couleur d'arrière-plan chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_border_color
Seulement avec images_version: 1 le paramètre
Couleur de bordure d'espace d'emballage chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_dashed_line_color
Seulement avec images_version: 1 le paramètre
Couleur de la bordure avant de l’espace d’emballage (en pointillés) chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_fill_color Couleur de remplissage d'espace d'emballage chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_item_fill_color Couleur de remplissage d'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_item_border_color
Seulement avec images_version: 1 le paramètre
Couleur de la bordure de l'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_sbs_last_item_fill_color Remplissez la couleur du dernier élément sur les images montrant un processus d'emballage 'étape par étape' chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_sbs_last_item_border_color
Seulement avec images_version: 1 le paramètre
Couleur de bordure du dernier élément sur des images montrant l'emballage 'étape par étape' chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_format format d'images chaîne Valeurs disponibles: [png, svg]
images_sbs Générer des images montrant un processus d'emballage 'étape par étape' entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant un processus d'emballage 'étape par étape' ne seront pas générées,
1 - signifie que les images montrant un processus d'emballage 'étape par étape' seront générées
images_complete Générer des images montrant un résultat d'emballage final entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant le résultat de l'emballage final ne seront pas générées,
1 - signifie que les images montrant le résultat de l'emballage final seront générées
images_separated Générez des images montrant séparément le placement de chaque élément entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant le placement de chaque élément séparément ne seront pas générées,
1 - signifie que les images montrant le placement de chaque élément séparément seront générées
item_coordinates Retour Coordonnées (x, y, z) pour chaque élément entier Valeurs disponibles:
0 [par défaut] - signifie que les coordonnées du placement de chaque élément ne seront pas retournées,
1 - que les coordonnées du placement de chaque élément seront retournées
stats Renvoyez les statistiques d'un processus d'emballage (par exemple, temps de génération d'images) entier Valeurs disponibles:
0 [par défaut] - signifie que les statistiques d'un processus d'emballage ne seront pas retournées,
1 - signifie que les statistiques d'un processus d'emballage seront retournées

translation missing: fr.response_parameters_h

RESPONSE

{
    "response":{ 
        "id":"response_id",
        "bins_packed":[
            {
                "bin_data":{
                        "w":4,
                        "h":4,
                        "d":4,
                        "id":"Pack M",
                        "used_space":42.1875,
                        "weight":2,
                        "gross_weight":2,
                        "used_weight":100,
                        "stack_height":3
                    },
                "image_complete":"image_url.svg",
                "items":[
                    {
                        "id":"Speakers",
                        "w":3,
                        "h":3,
                        "d":3,
                        "wg":2,
                        "image_sbs":"image_url.svg",
                        "coordinates":{"x1":0,"y1":0,"z1":0,"x2":3,"y2":3,"z2":3}
                    }
                ],
                "not_packed_items":[
                    {
                        "id":"Speakers",
                        "q":2
                    },
                    {
                        "id":"Bigger item",
                        "q":2
                    }
                ]
            },{
                "bin_data":{
                    "w":3,
                    "h":3,
                    "d":6,
                    "id":"Pack S",
                    "used_space":100,
                    "weight":4,
                    "gross_weight":4,
                    "used_weight":100,
                    "stack_height":3
                },
                "image_complete":"image_url.svg",
                "items":[
                    {
                        "id":"Speakers",
                        "w":3,
                        "h":3,
                        "d":3,
                        "wg":2,
                        "image_sbs":"image_url.svg",
                        "coordinates":{"x1":0,"y1":0,"z1":0,"x2":3,"y2":3,"z2":3}
                    },{
                        "id":"Speakers",
                        "w":3,
                        "h":3,
                        "d":3,
                        "wg":2,
                        "image_sbs":"image_url.svg",
                        "coordinates":{"x1":0,"y1":0,"z1":3,"x2":3,"y2":3,"z2":6}
                    }
                ],
                "not_packed_items":[
                    {
                        "id":"Speakers",
                        "q":1
                    },
                    {
                        "id":"Bigger item",
                        "q":2
                    }
                ]
            }
        ],
        "errors":[],
        "status":1,
        "not_packed_items":[]
    }
}

nom de param Description type de données info
[bins_packed] Liste des articles emballés réseau
errors Liste des erreurs possibles qui peuvent survenir dans la demande réseau Exemple: [{'niveau'}]; Valeurs retournées possibles: 'critique' - erreur critique - désactivation de l'emballage, 'avertissement' - avertissement concernant les données incorrectes dans la demande
status Statut de réponse entier Valeurs retournées possibles:
1 - La réponse n'a pas inclus d'erreurs critiques,
0 - La réponse a inclus des erreurs critiques. * Erreur critique - l'erreur de désactivation de l'emballage.Elle peut être due à l’absence d’un des paramètres requis ('username','api_key') ou à une valeure incorrecte du paramètre (par exemple: un champ, qui devrait contenir un nombre, contient une chaîne).
[not_packed_items] la liste d’éléments incapables d'être emballés, par exemple Paramètres incorrects d’entrée, poids excessif ou taille réseau

[bins_packed] - la liste des espaces d'emballage à emballer

nom de param Description type de données
bin_data Détails de l'espace d'emballage à emballer réseau
image_complete translation missing: fr.response_image_complete url
[items] translation missing: fr.response_items réseau
[not_packed_items] éléments incapables d'être emballés dans l'espace d'emballage réseau

[bin_data] - détails de l'espace d'emballage à emballer

nom de param Description type de données
id ID d'espace d’emballage. Le numéro ou le code que vous utilisez pour identifier l'espace d'emballage. chaîne
w Largeur d'espace d'emballage entier ou flottant
h Hauteur d'espace d'emballage entier ou flottant
d Profondeur / longueur d'espace d'emballage entier ou flottant
used_space pourcentage d'espace d'emballage utilisé entier ou flottant
weight poids des éléments à emballer entier ou flottant
gross_weight poids des articles à emballer + poids de l'espace d'emballage entier ou flottant
used_weight pourcentage du poids autorisé utilisé entier ou flottant
stack_height la hauteur des éléments empilés entier ou flottant

[items] - la liste des éléments à emballer

nom de param Description type de données
id ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w La largeur de l'élément entier ou flottant
h La hauteur de l'élément entier ou flottant
d la profondeur ou la longueur de l'article entier ou flottant
wg le poids de l'article entier ou flottant
image_separated translation missing: fr.response_params_image_separated url
image_sbs translation missing: fr.response_params_image_sbs url
coordinates translation missing: fr.response_params_coordinates {"x1":0,"y1":0,"z1":0,"x2":5,"y2":3,"z2":2}

[not_packed_items] - la liste des éléments incapables d'être emballés

nom de param Description type de données
id ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w La largeur de l'élément entier ou flottant
h La hauteur de l'élément entier ou flottant
d la profondeur ou la longueur de l'article entier ou flottant
q la quantité des mêmes articles à emballer entier
wg le poids de l'article entier ou flottant

Vérifier le Chargement Maximum

Utilisez Vérifier le Chargement maximum pour vérifier exactement le nombre d'articles qui rempliront un carton ou un espace d'emballage à pleine capacité.

URL

Paramètres de demande

Paramètres requis

REQUEST

{
    "username":"USERNAME",
    "api_key":"API_KEY",
    "bins": [
      {
         "w": 5,
         "h": 5,
         "d": 5,
         "max_wg": 0,
         "id": "Bin1",
         "type":"pallet"
      },
      {
         "w": 4,
         "h": 3,
         "d": 3,
         "max_wg": 0,
         "id": "Bin2",
         "type":"box"
      }
   ],
   "items": [
      {
         "w": 5,
         "h": 3,
         "d": 2,
         "vr": 1,
         "wg": 0,
         "id": "Item1"
      },
      {
         "w": 3,
         "h": 3,
         "d": 3,
         "vr": 1,
         "wg": 0,
         "id": "Item2"
      }
   ],
   "params": {
      "images_version": 2,
      "images_background_color": "255,255,255",
      "images_bin_border_color": "59,59,59",
      "images_bin_fill_color": "230,230,230",
      "images_item_border_color": "214,79,79",
      "images_item_fill_color": "177,14,14",
      "images_item_back_border_color": "215,103,103",
      "images_sbs_last_item_fill_color": "99,93,93",
      "images_sbs_last_item_border_color": "145,133,133",
      "images_width": 100,
      "images_height": 100,
      "images_source": "file",
      "images_sbs": 1,
      "item_coordinates": 1,
      "images_complete": 1,
      "images_separated": 1
   }
}
curl -X POST \
-H "Content-Type: application/json" \
-d '{"username": "USERNAME", "api_key": "API_KEY", "bins": [{"w": 5,"h": 5,"d": 5,"max_wg": 0,"id": "Bin1","type":"pallet"},{"w": 4,"h": 3,"d": 3,"max_wg": 0,"id": "Bin2","type":"box"}],"items": [{"w": 5,"h": 3,"d": 2,"vr": 1,"wg": 0,"id": "Item1"},{"w": 3,"h": 3,"d": 3,"vr": 1,"wg": 0,"id": "Item2"}], "params": {"images_background_color": "255,255,255", "images_bin_border_color": "59,59,59", "images_bin_fill_color": "230,230,230", "images_item_border_color": "22,22,22", "images_item_fill_color": "255,193,6", "images_item_back_border_color": "22,22,22", "images_sbs_last_item_fill_color": "177,14,14", "images_sbs_last_item_border_color": "22,22,22", "images_format": "svg", "images_width": 50, "images_height": 50, "images_source": "file", "stats": 0, "item_coordinates": 1, "images_complete": 1, "images_sbs": 1, "images_separated": 0, "images_version":2}}' \
https://global-api.3dbinpacking.com/packer/fillContainer \
-k
<?php

$data = array( 'bins' => array( array( 'id' => 'Bin1', 'h' => '5', 'w' => '5', 'd' => '5', 'wg' => '', 'max_wg' => '', 'type' => pallet' ), array( 'id' => 'Bin2', 'h' => '4', 'w' => '3', 'd' => '3', 'wg' => '', 'max_wg' => '', 'type' => 'pallet' ) ), 'items' => array( array( 'id' => 'Item1', 'w' => '5', 'h' => '3', 'd' => '2', 'wg' => '0', 'vr' => '1' ), array( 'id' => 'Item2', 'w' => '3', 'h' => '3', 'd' => '3', 'wg' => '0', 'vr' => '1' ) ), 'username' => 'YOUR_USERNAME', 'api_key' => 'YOUR_API_KEY', 'params' => array( 'images_background_color' => '255,255,255', 'images_bin_border_color' => '59,59,59', 'images_bin_fill_color' => '230,230,230', 'images_item_border_color' => '22,22,22', 'images_item_fill_color' => '255,193,6', 'images_item_back_border_color' => '22,22,22', 'images_sbs_last_item_fill_color' => '177,14,14', 'images_sbs_last_item_border_color' => '22,22,22', 'images_format' => 'svg', 'images_width' => '50', 'images_height' => '50', 'images_source' => 'file', 'stats' => '0', 'item_coordinates' => '1', 'images_complete' => '1', 'images_sbs' => '1', 'images_separated' => '0', 'images_vesrion' => 2 ) ); $query = json_encode($data);

$url = "https://global-api.3dbinpacking.com/packer/fillContainer"; $prepared_query = 'query='.$query; $ch = curl_init($url); curl_setopt( $ch, CURLOPT_POST, true ); curl_setopt( $ch, CURLOPT_POSTFIELDS, $prepared_query ); curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false ); curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, false ); curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 ); $resp = curl_exec($ch); if (curl_errno($ch)) { echo 'Error #' . curl_errno($ch) . ': ' . curl_error($ch).'<br>'; } curl_close($ch);

$response = json_decode($resp,true); // display errors if(isset($response['response']['errors'])){ foreach($response['response']['errors'] as $error){ echo $error['message'].'<br>'; } } // display data if( $response['response']['status'] > -1 ){ $b_packed= $response['response']['bins_packed']; foreach ($b_packed as $bin){ echo "<h2>Bin id:{$bin['bin_data']['id']}</h2> <p> {$bin['bin_data']['w']} x {$bin['bin_data']['h']} x {$bin['bin_data']['d']}</p> <p> Weight:{$bin['bin_data']['weight']}</p> <p> Used weight:{ $bin['bin_data']['used_weight'] }</p> <img src=\"{$bin['image_complete']}\"> <h2>Items packed in this bin:</h2>"; $items = $bin['items']; echo '<table style="text-align: center"> <tr><th>Item id</th> <th>Item dimensions</th> <th>Item weight</th> <th>Separated item</th> <th>Step by step</th></tr>'; foreach ( $items as $item){ echo "<tr><td>{$item['id']}</td> <td> {$item['w']} x {$item['h']} x {$bin['bin_data']['d']}</td> <td> {$item['wg']}</td> <td><img src=\"{$item['image_separated']}\"></td> <td><img src=\"{$item['image_sbs']}\"></td> </tr>"; } echo '</table>'; echo '<hr>';

} }

#!/usr/bin/python

import httplib
import urllib
import json

conn = httplib.HTTPConnection(host='global-api.3dbinpacking.com', port=80) data = {"username": "USERNAME", "api_key": "API_KEY", "bins": [{"w": 5,"h": 5,"d": 5,"max_wg": 0,"id": "Bin1", "type":"pallet"},{"w": 4,"h": 3,"d": 3,"max_wg": 0,"id": "Bin2","type":"box"}],"items": [{"w": 5,"h": 3,"d": 2,"vr": 1,"wg": 0,"id": "Item1"},{"w": 3,"h": 3,"d": 3,"vr": 1,"wg": 0,"id": "Item2"}], "params": {"images_background_color": "255,255,255", "images_bin_border_color": "59,59,59", "images_bin_fill_color": "230,230,230", "images_item_border_color": "22,22,22", "images_item_fill_color": "255,193,6", "images_item_back_border_color": "22,22,22", "images_sbs_last_item_fill_color": "177,14,14", "images_sbs_last_item_border_color": "22,22,22", "images_format": "svg", "images_width": 50, "images_height": 50, "images_source": "file", "stats": 0, "item_coordinates": 1, "images_complete": 1, "images_sbs": 1, "images_separated": 0, "images_version":2}} params = urllib.urlencode( {'query':json.dumps(data)} ) headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"} conn.request( "POST", "/packer/fillContainer", params, headers ) content = conn.getresponse( ).read( ) conn.close( ) print content

package javaapplication1;

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.ProtocolException; import java.net.URL; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map;; import org.json.simple.JSONObject; import org.springframework.web.client.RestTemplate;

public class JavaApplication1 {

/** * @param args the command line arguments */ public static void main(String[] args) throws MalformedURLException, ProtocolException, IOException { RestTemplate restTemplate = new RestTemplate(); JSONObject json = new JSONObject();

//SET BINS List<Map<String , String>> bins = new ArrayList<Map<String,String>>();

Map<String, String> bin1 = new HashMap<String, String>(); bin1.put("id", "Bin1"); bin1.put("h", "5"); bin1.put("w", "5"); bin1.put("d", "5"); bin1.put("wg", ""); bin1.put("max_wg", ""); bin1.put("type", "pallet"); bins.add(bin1); Map<String, String> bin2 = new HashMap<String, String>(); bin2.put("id", "Bin2"); bin2.put("h", "3"); bin2.put("w", "4"); bin2.put("d", "3"); bin2.put("wg", ""); bin2.put("max_wg", ""); bin2.put("type":"box"); bins.add(bin2);

//SET ITEMS List<Map<String , String>> items = new ArrayList<Map<String,String>>(); Map<String, String> item1 = new HashMap<String, String>(); item1.put("id", "Item1"); item1.put("w", "5"); item1.put("h", "3"); item1.put("d", "2"); item1.put("wg", "0"); item1.put("vr", "1"); items.add(item1); Map<String, String> item2 = new HashMap<String, String>(); item2.put("id", "Item2"); item2.put("w", "3"); item2.put("h", "3"); item2.put("d", "3"); item2.put("wg", "0"); item2.put("vr", "1"); items.add(item2);

//SET PARAMETERS Map <String , String > params = new HashMap <String , String >(); params.put("images_background_color", "255,255,255") params.put("images_bin_border_color", "59,59,59") params.put("images_bin_fill_color", "230,230,230") params.put("images_item_border_color", "22,22,22") params.put("images_item_fill_color", "255,193,6") params.put("images_item_back_border_color", "22,22,22") params.put("images_sbs_last_item_fill_color", "177,14,14") params.put("images_sbs_last_item_border_color", "22,22,22") params.put("images_format", "svg") params.put("images_width", "50") params.put("images_height", "50") params.put("images_source", "file") params.put("stats", "0") params.put("item_coordinates", "1") params.put("images_complete", "1") params.put("images_sbs", "1") params.put("images_separated", "0") params.put("images_version", "2")

//ADD ELEMENTS TO JSON json.put("username", "YOUR_USERNAME"); json.put("api_key", "YOUR_API_KEY"); json.put("items", items); json.put("bins", bins); json.put("params", params);

//CALL QUERY HttpURLConnection conn; URL addr = new URL("https://global-api.3dbinpacking.com/packer/fillContainer"); conn = (HttpURLConnection) addr.openConnection(); conn.setRequestMethod("POST"); conn.setDoOutput(true); conn.connect(); OutputStreamWriter osw = new OutputStreamWriter(conn.getOutputStream());

// prepare POST body String query = "query=" + json.toString();

osw.write(query); osw.flush(); osw.close();

BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream())); String response_json = br.readLine();

//DO SOMETHING COOL WITH THE RESPONSE System.out.println(response_json); } }

string data;
System.Net.HttpWebRequest req = System.Net.WebRequest.Create("https://global-api.3dbinpacking.com/packer/fillContainer") as System.Net.HttpWebRequest;

var request_data = new {username = "YOUR_USERNAME", api_key = "YOUR_API_KEY", items = new[] { new { id = "Item1", w = "5", h = "3", d = "2", wg = "0", vr = "1"}, new { id = "Item2", w = "3", h = "3", d = "3", wg = "0", vr = "1"} }, bins = new[] { new { id = "Bin1", h = "5", w = "5", d = "5", wg = "", max_wg = "", type = "pallet"}, new { id = "Bin2", h = "3", w = "4", d = "3", wg = "", max_wg = "", type = "box"} },

@params = new { images_background_color = "255,255,255", images_bin_border_color = "59,59,59", images_bin_fill_color = "230,230,230", images_item_border_color = "22,22,22", images_item_fill_color = "255,193,6", images_item_back_border_color = "22,22,22", images_sbs_last_item_fill_color = "177,14,14", images_sbs_last_item_border_color = "22,22,22", images_format = "svg", images_width = "50", images_height = "50", images_source = "file", stats = "0", item_coordinates = "1", images_complete = "1", images_sbs = "1", images_separated = "0", images_version = "2" } };

string json_str = JsonConvert.SerializeObject(request_data);

string queryParam = "query="+json_str;

byte[] postBytes = System.Text.Encoding.ASCII.GetBytes(queryParam); req.Method = "POST"; req.ContentType = "application/x-www-form-urlencoded"; req.ContentLength = postBytes.Length;

System.IO.Stream postStream = req.GetRequestStream(); postStream.Write(postBytes, 0, postBytes.Length); postStream.Close();

X509Certificate Cert = X509Certificate2.CreateFromCertFile("path_to_pem_key\global-api.3dbinpacking.com.pem"); req.ClientCertificates.Add(Cert);

using (System.Net.HttpWebResponse response = req.GetResponse() as System.Net.HttpWebResponse) { System.IO.StreamReader reader = new System.IO.StreamReader(response.GetResponseStream()); data = reader.ReadToEnd(); }

nom de param Description type de données
username
(requis)
nom d'utilisateur. Vous pouvez trouver la touche API dans la section ' / Profile settings / API access' après la connexion dans https : //www.3dbinpacking.com/en/customer/api-data chaîne
api_key
(requis)
clé API. Vous pouvez trouver la clé API dans la section '/ Profile settings/API access' après la connexion dans https://www.3dbinpacking.com/en/customer/api-data chaîne
[bins]
(requis)
tableau des paramètres d'espace d'emballage réseau
[items]
(requis)
translation missing: fr.params_array_items réseau
params tableau des paramètres de demande supplémentaires réseau

[bins] - Détails du tableau des espaces d'emballage

nom de param Description type de données
id
(requis)
ID d'espace d’emballage. Le numéro ou le code que vous utilisez pour identifier l'espace d'emballage. chaîne
w
(requis)
Largeur d'espace d'emballage flottant
h
(requis)
Hauteur d'espace d'emballage flottant
d
(requis)
Profondeur / longueur d'espace d'emballage flottant
wg le poids de l'espace d'emballage entier ou flottant
max_wg Le poids maximum que cet espace d'emballage peut contenir. Valeur définie sur '0' (zéro) signifie qu'il n'y a pas de limite de poids entier ou flottant
type
Seulement avec images_version: 2 le paramètre
Spécifie si l'image sera présentée sous la forme d'un carton ou d'une palette translation missing: fr.params_type_stringt

[items] - Détails du tableau des produits

nom de param Description type de données info
id
(requis)
ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w
(requis)
La largeur de l'élément entier ou flottant
h
(requis)
La hauteur de l'élément entier ou flottant
d
(requis)
la profondeur ou la longueur de l'article entier ou flottant
wg le poids de l'article entier ou flottant
vr Rotation verticale. Les informations si l'article peut être tourné verticalement. entier Rotation verticale. Les informations si l'article peut être tourné verticalement.
item_colors_schema Définissez quel type de schéma de couleur doit être utilisé chaîne
item_fill_color Couleur de remplissage d'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
item_border_color Couleur de la bordure de l'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'

params - Paramètres optionnels

nom de param Description type de données info
images_version Version du générateur d'images entier Valeurs disponibles: [1 | 2]
images_width translation missing: fr.images_width_d entier Valeurs disponibles: 1 - 250
images_height Hauteur maximale des images générées entier Valeurs disponibles: 1 - 250
images_background_color couleur d'arrière-plan chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_border_color
Seulement avec images_version: 1 le paramètre
Couleur de bordure d'espace d'emballage chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_dashed_line_color
Seulement avec images_version: 1 le paramètre
Couleur de la bordure avant de l’espace d’emballage (en pointillés) chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_bin_fill_color Couleur de remplissage d'espace d'emballage chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_item_fill_color Couleur de remplissage d'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_item_border_color
Seulement avec images_version: 1 le paramètre
Couleur de la bordure de l'élément chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_sbs_last_item_fill_color Remplissez la couleur du dernier élément sur les images montrant un processus d'emballage 'étape par étape' chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_sbs_last_item_border_color
Seulement avec images_version: 1 le paramètre
Couleur de bordure du dernier élément sur des images montrant l'emballage 'étape par étape' chaîne Valeurs disponibles: Valeurs RVB des points de couleurs séparés 'rouge, vert, bleu', valeurs autorisées 0-255; Exemple: '255,120,10'
images_format format d'images chaîne Valeurs disponibles: [png, svg]
images_sbs Générer des images montrant un processus d'emballage 'étape par étape' entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant un processus d'emballage 'étape par étape' ne seront pas générées,
1 - signifie que les images montrant un processus d'emballage 'étape par étape' seront générées
images_complete Générer des images montrant un résultat d'emballage final entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant le résultat de l'emballage final ne seront pas générées,
1 - signifie que les images montrant le résultat de l'emballage final seront générées
images_separated Générez des images montrant séparément le placement de chaque élément entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant le placement de chaque élément séparément ne seront pas générées,
1 - signifie que les images montrant le placement de chaque élément séparément seront générées
item_coordinates Retour Coordonnées (x, y, z) pour chaque élément entier Valeurs disponibles:
0 [par défaut] - signifie que les images montrant le placement de chaque élément séparément ne seront pas générées,
1 - signifie que les images montrant le placement de chaque élément séparément seront générées
stats Renvoyez les statistiques d'un processus d'emballage (par exemple, temps de génération d'images) entier Valeurs disponibles:
0 [par défaut] - signifie que les statistiques d'un processus d'emballage ne seront pas retournées,
1 - signifie que les statistiques d'un processus d'emballage seront retournées

translation missing: fr.response_parameters_h

RESPONSE

{
    "response":{
        "id":"response_id",
        "bins_packed":[
            {
                "bin_data":{
                    "w":5,
                    "h":5,
                    "d":5,
                    "id":"Bin1",
                    "used_space":72,
                    "weight":0,
                    "gross_weight":0,
                    "used_weight":100,
                    "stack_height":5,
                    "order_id":null
                },
                "image_complete":"image_url.png",
                "items":[
                    {
                        "id":"Item1",
                        "w":5,
                        "h":3,
                        "d":2,
                        "wg":0,
                        "image_separated":"image_url.png",
                        "image_sbs":"image_url.png",
                        "coordinates":{"x1":0,"y1":0,"z1":0,"x2":5,"y2":3,"z2":2}
                    },{
                        "id":"Item1",
                        "w":5,
                        "h":3,
                        "d":2,
                        "wg":0,
                        "image_separated":"image_url.png",
                        "image_sbs":"image_url.png",
                        "coordinates":{"x1":0,"y1":0,"z1":2,"x2":5,"y2":3,"z2":4}
                    },{
                        "id":"Item1",
                        "w":5,
                        "h":3,
                        "d":2,
                        "wg":0,
                        "image_separated":"image_url.png",
                        "image_sbs":"image_url.png",
                        "coordinates":{"x1":0,"y1":3,"z1":0,"x2":5,"y2":5,"z2":3}
                    }
                ]
            },{
                "bin_data":{
                    "w":4,
                    "h":3,
                    "d":3,
                    "id":"Bin2",
                    "used_space":75,
                    "weight":0,
                    "gross_weight":0,
                    "used_weight":100,
                    "stack_height":3
                },
                "image_complete":"image_url.png",
                "items":[
                    {
                        "id":"Item2",
                        "w":3,
                        "h":3,
                        "d":3,
                        "wg":0,
                        "image_separated":"image_url.png",
                        "image_sbs":"image_url.png",
                        "coordinates":{"x1":0,"y1":0,"z1":0,"x2":3,"y2":3,"z2":3}
                    }
                ]
            }
        ],
        "errors":[],
        "status":1,
        "not_packed_items":[]
    }
}

nom de param Description type de données info
[bins_packed] Liste des articles emballés réseau
errors Liste des erreurs possibles qui peuvent survenir dans la demande réseau Exemple: [{'niveau'}]; Valeurs retournées possibles: 'critique' - erreur critique - désactivation de l'emballage, 'avertissement' - avertissement concernant les données incorrectes dans la demande
status Statut de réponse entier Valeurs retournées possibles:
1 - La réponse n'a pas inclus d'erreurs critiques,
0 - La réponse a inclus des erreurs critiques. * Erreur critique - l'erreur de désactivation de l'emballage.Elle peut être due à l’absence d’un des paramètres requis ('username','api_key') ou à une valeure incorrecte du paramètre (par exemple: un champ, qui devrait contenir un nombre, contient une chaîne).
[not_packed_items] la liste d’éléments incapables d'être emballés, par exemple Paramètres incorrects d’entrée, poids excessif ou taille réseau

[bins_packed] - la liste des espaces d'emballage à emballer

nom de param Description type de données
bin_data Détails de l'espace d'emballage à emballer réseau
image_complete translation missing: fr.response_image_complete url
[items] translation missing: fr.response_items réseau

[bin_data] - détails de l'espace d'emballage à emballer

nom de param Description type de données
id ID d'espace d’emballage. Le numéro ou le code que vous utilisez pour identifier l'espace d'emballage. chaîne
w Largeur d'espace d'emballage entier ou flottant
h Hauteur d'espace d'emballage entier ou flottant
d Profondeur / longueur d'espace d'emballage entier ou flottant
used_space pourcentage d'espace d'emballage utilisé entier ou flottant
weight poids des éléments à emballer entier ou flottant
gross_weight poids des articles à emballer + poids de l'espace d'emballage entier ou flottant
used_weight pourcentage du poids autorisé utilisé entier ou flottant
stack_height la hauteur des éléments empilés entier ou flottant

[items] - la liste des éléments à emballer

nom de param Description type de données
id ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w La largeur de l'élément entier ou flottant
h La hauteur de l'élément entier ou flottant
d la profondeur ou la longueur de l'article entier ou flottant
wg le poids de l'article entier ou flottant
image_separated translation missing: fr.response_params_image_separated url
image_sbs translation missing: fr.response_params_image_sbs url
coordinates translation missing: fr.response_params_coordinates {"x1":0,"y1":0,"z1":0,"x2":5,"y2":3,"z2":2}

[not_packed_items] - la liste des éléments incapables d'être emballés

nom de param Description type de données
id ID d'élément / sku. Le numéro ou le code que vous utilisez pour identifier ce qui est emballé. chaîne
w La largeur de l'élément entier ou flottant
h La hauteur de l'élément entier ou flottant
d la profondeur ou la longueur de l'article entier ou flottant
q la quantité des mêmes articles à emballer entier
wg le poids de l'article entier ou flottant

graphiques

Vous trouverez ci-dessous les différences entre les images et une description de certains paramètres de demande.

Différences entre les version 1 et 2 du générateur d'images.

La principale différence entre les images est la façon dont les résultats sont présentés. Dans la première version, la vue est présentée de manière dimétrique. La deuxième version est présentée de manière isométrique.
D'autres différences sont:

Images en fonction du type d'espace d'emballage

"bins":
    [
        {
            "id":"Pack M",
            "h":50,
            "w":120,
            "d":80,
            "wg":"",
            "max_wg":"",
            "q":null,
            "cost":0,
            "type":"pallet"
        },
        {
            "id":"Pack S",
            "h":3,
            "w":3,
            "d":6,
            "wg":"",
            "max_wg":"",
            "q":null,
            "cost":0
            "type":"box"
        }
    ],

Dans la 2ème version des images ( images_version: "2"), nous pouvons générer des images montrant le type d'espace d'emballage que nous définissons.
Il existe 2 options disponibles: [‘box’ | 'pallet’]. La valeur par défaut est box.Dans ce cas, l’image montrera une coupe transversale d’espace d’emballage avec des articles emballés.
Si le paramètre est défini sur pallet , la palette sera générée avec des éléments empilés dessus.
Il y a un exemple ci-dessous montrant la différence entre les images.

Pallet image
type: "pallet"
Box image
type: "box"

translation missing: fr.images_complete_h

Images montrant le résultat final d'emballage

Complete
Complete

Instructions d'emballage étape par étape

Ce graphique montre le processus d'emballage étape par étape. Dans chaque image suivante, les éléments précédemment emballés sont marqués d'une couleur différente de l'élément actuellement emballé.
En dessous les deux versions d'images sont présentées.

Step by step 1
Step 1
Step by step 2
Step 2
Step by step 3
Step 3
Step by step 4
Step 4

translation missing: fr.images_separated_h

translation missing: fr.images_separated_d

Separated 1
Separated 1
Separated 2
Separated 2
Separated 3
Separated 3
Separated 4
Separated 4

Mise à l’échelle des images SVG

Grâce au format SVG, il est possible de les dimensionner librement sans perdre leur qualité.
L'exemple suivant montre la même image dans différentes tailles.
Le 1er a les dimensions minimales définies sur 200x200px et les dims max définies sur 400x400px .
Le 2e a les dimensions minimales définies sur 300x300px et les dims max définies sur 400x400px .

Step by step 3Min: 100x100px; Max: 200x200px;
<img src="path_to_image/image.svg" alt="Step by step 3" style="min-width: 100px; max-width: 200px; min-height: 100px; max-height: 200px;">
Step by step 3Min: 300x300px; Max: 400x400px;
<img src="path_to_image/image.svg" alt="Step by step 3" style="min-width: 300px; max-width: 400px; min-height: 300px; max-height: 400px;">

format d'images

Il est possible de générer des images au format SVG ou PNG.
Grâce au format SVG, l'utilisateur peut librement dimensionner les images sans perdre leurs qualités.

Errors

HTTP

Error Meaning
400 Bad Request - Your request is invalid.
404 Bad URL - Your request URL is invalid.
500 Server error.

API

List of pssible API errors

Error lever Message
TYPE_CRITICAL No bins to pack.
TYPE_CRITICAL Exceeded maximum number of items per request. Maximum number is 4999 or less
TYPE_CRITICAL No items to pack.
TYPE_CRITICAL Pallet cannot be packed. - z powodu np błędnie podanych wymiarów
TYPE_CRITICAL Request parameter "query" can not be empty.
TYPE_CRITICAL Request parameter "query" has to be in JSON format! Example: query={"username":"your_username",....}
TYPE_CRITICAL Request parameter "query" not set! Correct request content format: query={...}
TYPE_CRITICAL Required parameter "bins" not set!
TYPE_CRITICAL Required parameter "username" not set!
TYPE_CRITICAL Required parameter "api_key" not set!
TYPE_CRITICAL Unknown optimization_mode in the request params!
TYPE_CRITICAL Required parameter "items" not set!
TYPE_CRITICAL Requested "bins" parameter is not an array!
TYPE_CRITICAL Each "strategy" data in "bins_strategies" parameter must be an array!
TYPE_CRITICAL Requested "bins_strategies" parameter is not an array!
TYPE_CRITICAL Missing "bins" key in strategy data!
TYPE_CRITICAL Requested "bins" parameter is not an array!
TYPE_CRITICAL Requested "items" parameter is not an array!
TYPE_WARNING Bin 'bin_id' can't be packed. Exceeded maximum number of items per simulation. The maximum number is 4999.
TYPE_WARNING Bin 'bin_id' has incorrect dimension(s) and is not packed.
TYPE_WARNING Bin 'bin_id' has incorrect 'find' value and is not packed.
TYPE_WARNING Bin 'bin_id' has incorrect dimension(s) and is not packed.
TYPE_WARNING Item 'item_id' has incorrect dimensions.
TYPE_WARNING Item 'item_id' has incorrect quantity value.
TYPE_WARNING Item 'item_id' has incorrect dimensions.
TYPE_WARNING Item 'item_id' has incorrect quantity value.
TYPE_WARNING Too many items or bins.
TYPE_WARNING Reached the maximum (100) pallets number per request.
TYPE_WARNING Pallet has incorrect dimension(s) and is not packed.
TYPE_WARNING Wrong color definition for parameter "item_fill_color". [0-255] values range allowed, with comma separation. Example: 255,255,255
TYPE_WARNING Wrong color definition for parameter "image_border_color". [0-255] values range allowed, with comma separation. Example: 255,255,255
TYPE_WARNING Wrong images_width parameter. [10-250] allowed.
TYPE_WARNING Wrong images_height parameter. [10-250] allowed
TYPE_WARNING Wrong color definition for parameter "images_background_color". [0-255] values range allowed, with comma separation. Example: 255,255,255
TYPE_WARNING Wrong color definition for parameter "images_bin_border_color". [0-255] values range allowed, with comma separation. Example: 255,255,255
TYPE_WARNING Wrong color definition for parameter "images_bin_fill_color". [0-255] values range allowed, with comma separation. Example: 255,255,255
TYPE_WARNING Wrong color definition for parameter "images_item_border_color". [0-255] values range allowed, with comma separation. Example: 255,255,255
TYPE_WARNING Wrong color definition for parameter "images_item_fill_color". [0-255] values range allowed, with comma separation. Example: 255,255,255
TYPE_WARNING Wrong color definition for parameter "images_filler_border_color". [0-255] values range allowed, with comma separation. Example: 255,255,255
TYPE_WARNING Wrong color definition for parameter "images_filler_fill_color". [0-255] values range allowed, with comma separation. Example: 255,255,255
TYPE_WARNING Wrong color definition for parameter "images_item_back_border_color". [0-255] values range allowed, with comma separation. Example: 255,255,255
TYPE_WARNING Wrong color definition for parameter "images_dashed_line_color". [0-255] values range allowed, with comma separation. Example: 255,255,255
TYPE_WARNING Wrong color definition for parameter "images_bin_dashed_line_color". [0-255] values range allowed, with comma separation. Example: 255,255,255
TYPE_WARNING Wrong "images_source" parameter. [base64|file] allowed
TYPE_WARNING Wrong "images_format" parameter. [png|svg] allowed
TYPE_NOTICE Item 'item_id' can't be packed into bin 'bin_id'
TYPE_NOTICE Item 'item_id' can't be packed into any bin.
TYPE_NOTICE Item 'item_id' can't be packed into bin 'bin_id'.
TYPE_NOTICE Item 'item_id' can't be packed into any bin.
TYPE_NOTICE Parameters "item_fill_color" and "item_border_color" are required for item_colors_schema = "item"
TYPE_NOTICE Parameter "item_color_schema" - allowed values: [default|random|item]. Value "default" has been been used