{
    "swagger": "2.0",
    "info": {
        "title": "Dipli API",
        "version": "2.0.0"
    },
    "host": "bi.agora.place",
    "schemes": [
        "https",
        "http"
    ],
    "consumes":[
        "application\/json"
    ],
    "produces":[
        "application\/json"
    ],
    "paths":{
        "\/api-drop\/v2\/stock":{
            "get":{
                "summary":"Returns stock for dropship partner.",
                "consumes":[
                "application\/json"
                ],
                "produces":[
                "application\/json"
                ],
                "responses":{
                "200":{
                    "description":"Returns stock for dropship partner",
                    "schema":{
                        "properties":{
                            "71234567":{
                            "$ref":"#\/definitions\/ProductDrop"
                            }
                        },
                        "type":"object"
                    }
                },
                "400":{
                    "description":"Bad request",
                    "schema":{
                        "$ref":"#\/definitions\/BadResponse"
                    }
                },
                "500":{
                    "description":"Internal server error",
                    "schema":{
                        "$ref":"#\/definitions\/InternalResponse"
                    }
                }
                },
                "tags":[
                "dropshipping"
                ]
            }
        },
        "\/api-drop\/v2\/orders":{
            "get":{
                "summary":"Returns orders for dropship partner.",
                "consumes":[
                "application\/json"
                ],
                "produces":[
                "application\/json"
                ],
                "parameters":[
                {
                    "name":"new",
                    "in":"query",
                    "required":false,
                    "description":"get new orders only",
                    "type":"boolean",
                    "default":"false"
                },
                {
                    "name":"createdAt",
                    "in":"query",
                    "required":false,
                    "description":"date of oldier order (format: yyyy-mm-dd)",
                    "type":"string"
                },
                {
                    "name":"updatedAt",
                    "in":"query",
                    "required":false,
                    "description":"date of oldier order update (format: yyyy-mm-dd)",
                    "type":"string"
                },
                {
                    "name":"status",
                    "in":"query",
                    "required":false,
                    "description":"status of order (\u0027ongoing_shipping\u0027 \/ \u0027error_shipping\u0027 \/ \u0027cancelled\u0027 \/ \u0027pending_confirmation\u0027 \/ \u0027shipped\u0027)",
                    "type":"string"
                },
                {
                    "name":"page",
                    "in":"query",
                    "required":false,
                    "description":"actual page",
                    "type":"string",
                    "default":"1"
                },
                {
                    "name":"pageSize",
                    "in":"query",
                    "required":false,
                    "description":"page\u0027s size",
                    "type":"string",
                    "default":"50"
                }
                ],
                "responses":{
                "200":{
                    "description":"Returns orders for dropship partner",
                    "schema":{
                        "properties":{
                            "count":{
                            "description":"number of items",
                            "type":"integer"
                            },
                            "page":{
                            "description":"current page",
                            "type":"integer"
                            },
                            "pageSize":{
                            "description":"number of items per page",
                            "type":"integer"
                            },
                            "result":{
                            "description":"array of result",
                            "items":{
                                "$ref":"#\/definitions\/OrderDrop"
                            },
                            "type":"array"
                            }
                        },
                        "type":"object"
                    }
                },
                "400":{
                    "description":"Bad request",
                    "schema":{
                        "$ref":"#\/definitions\/BadResponse"
                    }
                },
                "500":{
                    "description":"Internal server error",
                    "schema":{
                        "$ref":"#\/definitions\/InternalResponse"
                    }
                }
                },
                "tags":[
                "dropshipping"
                ]
            },
            "post":{
                "summary":"Create an order for dropship partner.",
                "consumes":[
                "application\/json"
                ],
                "produces":[
                "application\/json"
                ],
                "parameters":[
                {
                    "name":"data",
                    "in":"body",
                    "required":true,
                    "schema":{
                        "required":[
                            "alternative_id",
                            "product_id",
                            "buyer",
                            "street",
                            "postcode",
                            "city",
                            "country",
                            "buyer_phone",
                            "buyer_email"
                        ],
                        "properties":{
                            "alternative_id":{
                            "description":"order\u0027s partner ID",
                            "type":"string"
                            },
                            "product_id":{
                            "description":"product\u0027s dropship ID",
                            "type":"integer"
                            },
                            "buyer":{
                            "description":"order\u0027s buyer",
                            "type":"string"
                            },
                            "street":{
                            "description":"street",
                            "type":"string"
                            },
                            "additional_street":{
                            "description":"additional_street",
                            "type":"string"
                            },
                            "postcode":{
                            "description":"postcode",
                            "type":"string"
                            },
                            "city":{
                            "description":"city",
                            "type":"string"
                            },
                            "country":{
                            "description":"country",
                            "type":"string"
                            },
                            "buyer_phone":{
                            "description":"buyer\u0027s phone",
                            "type":"string"
                            },
                            "buyer_email":{
                            "description":"buyer\u0027s email",
                            "type":"string"
                            },
                            "extra":{
                            "description":"order\u0027s extra",
                            "type":"string"
                            }
                        },
                        "type":"object"
                    }
                }
                ],
                "responses":{
                "200":{
                    "description":"create an order for dropship partner",
                    "schema":{
                        "allOf":[
                            {
                            "$ref":"#\/definitions\/SuccessResponse"
                            },
                            {
                            "required":[
                                "public_id"
                            ],
                            "properties":{
                                "public_id":{
                                    "description":"order\u0027s public id",
                                    "example":"A-12345",
                                    "type":"string"
                                }
                            },
                            "type":"object"
                            }
                        ]
                    }
                },
                "400":{
                    "description":"Bad request",
                    "schema":{
                        "$ref":"#\/definitions\/BadResponse"
                    }
                },
                "500":{
                    "description":"Internal server error",
                    "schema":{
                        "$ref":"#\/definitions\/InternalResponse"
                    }
                }
                },
                "tags":[
                "dropshipping"
                ]
            }
        },
        "\/api-drop\/v2\/orders\/{publicId}":{
            "get":{
                "summary":"Returns an order for dropship partner.",
                "consumes":[
                "application\/json"
                ],
                "produces":[
                "application\/json"
                ],
                "parameters":[
                {
                    "name":"publicId",
                    "in":"path",
                    "required":true,
                    "type":"string"
                }
                ],
                "responses":{
                "200":{
                    "description":"Returns an order for dropship partner",
                    "schema":{
                        "$ref":"#\/definitions\/OrderDrop"
                    }
                },
                "400":{
                    "description":"Bad request",
                    "schema":{
                        "$ref":"#\/definitions\/BadResponse"
                    }
                },
                "404":{
                    "description":"Not found",
                    "schema":{
                        "$ref":"#\/definitions\/NotFoundResponse"
                    }
                },
                "500":{
                    "description":"Internal server error",
                    "schema":{
                        "$ref":"#\/definitions\/InternalResponse"
                    }
                }
                },
                "tags":[
                "dropshipping"
                ]
            }
        }
    },
    "definitions":{
        "SuccessResponse":{
            "properties":{
                "code":{
                "example":200,
                "type":"integer"
                },
                "msg":{
                "example":"Success",
                "type":"string"
                }
            },
            "type":"object"
        },
        "BadResponse":{
            "properties":{
                "code":{
                "example":400,
                "type":"integer"
                },
                "msg":{
                "example":"Bad Request",
                "type":"string"
                }
            },
            "type":"object"
        },
        "NotFoundResponse":{
            "properties":{
                "code":{
                "example":404,
                "type":"integer"
                },
                "msg":{
                "example":"Not Found",
                "type":"string"
                }
            },
            "type":"object"
        },
        "InternalResponse":{
            "properties":{
                "code":{
                "example":500,
                "type":"integer"
                },
                "msg":{
                "example":"Internale Server Error",
                "type":"string"
                }
            },
            "type":"object"
        },
        "ProductDrop":{
            "properties":{
                "name":{
                "example":"Apple iPhone 8 64",
                "type":"string"
                },
                "grade":{
                "example":"Grade A",
                "type":"string"
                },
                "color":{
                "example":"Blanc",
                "type":"string"
                },
                "skus":{
                "example":"[\u0022APP_IPH_8_64\u0022, \u0022MY_SUPER_SKU\u0022]",
                "type":"array"
                },
                "stock":{
                "example":4,
                "type":"integer"
                },
                "finalprice":{
                "example":110,
                "type":"integer"
                },
                "id":{
                "example":"71234567",
                "type":"string"
                }
            },
            "type":"object"
        },
        "OrderDrop":{
            "properties":{
                "id":{
                "example":111111,
                "type":"integer"
                },
                "public_id":{
                "example":"A-111111",
                "type":"string"
                },
                "by_agora":{
                "example":true,
                "type":"boolean"
                },
                "to_ship":{
                "example":true,
                "type":"boolean"
                },
                "order_at":{
                "example":"2022-09-05T14:34:30+01:00",
                "type":"string"
                },
                "delivered_at":{
                "example":"2022-09-11T10:30:10+01:00",
                "type":"string"
                },
                "bordereau_url":{
                "example":"762b60bbe9f82bca7b80f5747fe959a4",
                "type":"string"
                },
                "payment_status":{
                "example":"payment_received",
                "type":"string"
                },
                "shipping_status":{
                "example":"pending_confirmation",
                "type":"string"
                },
                "billing_address_json":{
                "example":"{\u0022street\u0022:\u0022a\u0022,\u0022additionnal\u0022:\u0022a\u0022,\u0022postcode\u0022:\u002275000\u0022,\u0022city\u0022:\u0022a\u0022,\u0022country\u0022:\u0022FR\u0022,\u0022firstname\u0022:\u0022a\u0022,\u0022lastname\u0022:\u0022a\u0022,\u0022company\u0022:\u0022A\u0022, \u0022type\u0022:\u0022billing\u0022,\u0022email\u0022:\u0022email@dipli.com\u0022,\u0022telephone\u0022:\u0022061111111111\u0022,\u0022deliveryinfos\u0022:null,\u0022ref\u0022:null}",
                "type":"string"
                },
                "shipping_address_json":{
                "example":"{\u0022street\u0022:\u0022a\u0022,\u0022additionnal\u0022:\u0022a\u0022,\u0022postcode\u0022:\u002275000\u0022,\u0022city\u0022:\u0022a\u0022,\u0022country\u0022:\u0022FR\u0022,\u0022firstname\u0022:\u0022a\u0022,\u0022lastname\u0022:\u0022a\u0022,\u0022company\u0022:\u0022A\u0022, \u0022type\u0022:\u0022shipping\u0022,\u0022email\u0022:\u0022email@dipli.com\u0022,\u0022telephone\u0022:\u0022061111111111\u0022,\u0022deliveryinfos\u0022:null,\u0022ref\u0022:null}",
                "type":"string"
                },
                "anonymous_email":{
                "example":"810231556_1512390@orders.agora.place",
                "type":"string"
                },
                "tracking_courier":{
                "example":"ups",
                "type":"string"
                },
                "tracking_number":{
                "example":"X12FA123GT",
                "type":"string"
                },
                "total_ttc":{
                "example":19900,
                "type":"integer"
                },
                "total_ht":{
                "example":16583,
                "type":"integer"
                },
                "shipping_h_t":{
                "example":1000,
                "type":"integer"
                },
                "shipping_t_t_c":{
                "example":1200,
                "type":"integer"
                },
                "canceled_at":{
                "example":"2022-09-15T10:30:10+01:00",
                "type":"string"
                },
                "cart_items":{
                "items":{
                    "$ref":"#\/definitions\/CartItem"
                },
                "type":"array"
                }
            },
            "type":"object"
        },
        "CartItem":{
            "properties":{
                "tax_class":{
                "example":"TVA Classique",
                "type":"string"
                },
                "product_sku":{
                "example":"APPLE_IPHONE_8_SKU",
                "type":"string"
                },
                "product_name":{
                "example":"Apple iPhone 8 64",
                "type":"string"
                },
                "product_quantity":{
                "example":10,
                "type":"integer"
                },
                "product_extra_infos":{
                "example":"{\u0022extended_images\u0022:[\u0022f6f5692eecb63dde4c94.jpg\u0022],\u0022grouped_id\u0022:707026,\u0022id\u0022:11699153,\u0022product_id\u0022:25005,\u0022price\u0022:12000,\u0022position\u0022:\u00221er\u0022,\u0022name\u0022:\u0022Apple iPhone 8 32\u0022,\u0022grade\u0022:\u0022Grade C\u0022,\u0022tax_class\u0022:\u0022Tva classique\u0022,\u0022color\u0022:\u0022Gris sideral\u0022,\u0022packaging\u0022:\u0022Chargeur et cable\u0022,\u0022sku\u0022:\u0022O3_MQ3D2ZD\\\/A\u0022,\u0022stock\u0022:1}",
                "type":"string"
                }
            },
            "type":"object"
        }
    },
    "securityDefinitions":{
        "ApiKeyAuth":{
            "name":"apikey",
            "type":"apiKey",
            "in":"header"
        }
    },
    "security":[
        {
            "ApiKeyAuth":[
                
            ]
        }
    ]
}