{"docs":{"name":"Octopi API","info":"\n\u003ch2 id=\"octopi_is_a_modern_terminal_operating_system_tos\"\u003eOctopi is a modern Terminal Operating System (TOS).\u003c/h2\u003e\n\n\u003ch3 id=\"rest__hypermedia\"\u003eREST \u0026amp; Hypermedia\u003c/h3\u003e\n\n\u003cp\u003eThe Octopi API is a \u003ca href=\"https://en.wikipedia.org/wiki/Representational_state_transfer\"\u003eRESTful API\u003c/a\u003e using JSON and the \u003ca href=\"https://en.wikipedia.org/wiki/HATEOAS\"\u003eHATEOAS paradigm\u003c/a\u003e. In every JSON response from the API, you will find a list of actions returned as a JSON array. These actions are all the methods available on the API resource. We encourage you to build your clients to use these actions dynamically. That way, if the API changes URLs, your client will keep functioning without changing the source code of your client application.\u003c/p\u003e\n\n\u003ch3 id=\"authentication\"\u003eAuthentication\u003c/h3\u003e\n\n\u003cp\u003eThe Octopi API uses \u003ca href=\"https://tools.ietf.org/html/draft-hammer-http-token-auth-01\"\u003eHTTP Token Access Authentication\u003c/a\u003e.\u003c/p\u003e\n\n\u003cp\u003eTo authenticate, you need to pass in your API Key (obtained from the Octopi Team) in the HTTP request header using an ‘Authorization’ header with the API key as a token. For example, the header should have “Token token=yourapikey”.\u003c/p\u003e\n\n\u003ch3 id=\"dates_and_times\"\u003eDates and Times\u003c/h3\u003e\n\n\u003cp\u003eThe Octopi API returns all dates and times in \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\"\u003eISO 8601\u003c/a\u003e format and \u003ca href=\"https://en.wikipedia.org/wiki/Coordinated_Universal_Time\"\u003eUTC\u003c/a\u003e.\u003c/p\u003e\n","copyright":"Kaleris","doc_url":"/api/v1/documentation/1.0","api_url":"/api/v1","resources":{"appointments":{"doc_url":"/api/v1/documentation/1.0/appointments","id":"appointments","api_url":"/api/v1","name":"Appointments","short_description":"Fetch the available appointment slots, list, view, create, update, reschedule, and cancel appointments in Octopi.","full_description":"\n\u003cp\u003eThis resource allows clients to fetch the available appointment slots, list, view, create, update, reschedule, and cancel appointments in Octopi.‘\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/appointments/index","name":"index","apis":[{"api_url":"/api/v1/appointments","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eReturns all the appointments present for a provided date.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"appointment_date","full_name":"appointment_date","description":"\n\u003cp\u003eFilter appointments for the provided date. Must be formatted as YYYY-MM-DD.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"appointment_number","full_name":"appointment_number","description":"\n\u003cp\u003eFilter appointments for a given appointment. You can pass the appointment Octopi ID or the appointment number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"terminal","full_name":"terminal","description":"\n\u003cp\u003eFilter appointments for the provided Terminal Name. You can pass the terminal Octopi ID or the terminal name.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container","full_name":"container","description":"\n\u003cp\u003eFilter appointments associated with a container. You can pass the container Octopi ID or the container number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck","full_name":"truck","description":"\n\u003cp\u003eFilter appointments associated with a truck. You can pass the truck Octopi ID or the truck’s license plate.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"bill_of_lading","full_name":"bill_of_lading","description":"\n\u003cp\u003eFilter appointments associated with a bill of lading. You can pass the bill of lading Octopi ID or the bill_of_lading number\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_line","full_name":"shipping_line","description":"\n\u003cp\u003eFilter appointments associated with a shipping line. You can pass the shipping line Octopi ID or the shiping line’s name\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"status","full_name":"status","description":"\n\u003cp\u003eFilter appointments for the given status\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003epending\u003c/code\u003e, \u003ccode\u003ecompleted\u003c/code\u003e, \u003ccode\u003ecancelled\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"booking","full_name":"booking","description":"\n\u003cp\u003eFilter appointments associated with a booking. You can pass the booking Octopi ID or the booking number\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"purpose","full_name":"purpose","description":"\n\u003cp\u003eFilter appointments for the provided purpose type\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003edrop_off\u003c/code\u003e, \u003ccode\u003epick_up\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"delivery_order","full_name":"delivery_order","description":"\n\u003cp\u003eFilter appointments associated with a delivery order. You can pass the delivery orde Octopi ID or the delivery orde number\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_driver","full_name":"truck_driver","description":"\n\u003cp\u003eFilter appointments associated with a truck driver. You can pass the truck driver Octopi ID or the truck driver’s license number\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of appointments to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl --location --request GET 'https://app.octopi.co/api/v1/appointments'     --header 'Authorization: Token token==ADD TOKEN HERE'     --header 'Content-Type: application/json'     --data-raw '{\n  \"appointment_date\": \"2023-08-18\"\n}'\n","{\n  \"appointments\": [\n    {\n      \"appointment_number\": \"OCTOAPPT1104501\",\n      \"appointment_slot_id\": 1045,\n      \"appointment_date\": \"2023-08-18\",\n      \"appointment_timings\": \"01:00 PM - 02:00 PM\",\n      \"status\": \"Pending\",\n      \"truck\": \"TN01AN1982\",\n      \"truck_driver\": {\n        \"id\": 1234,\n        \"fullname\": \"John Doe\",\n        \"license_number\": \"LIDEW9784FY\",\n        \"twic\": \"\",\n        \"number\": \"633353\",\n        \"active\": true,\n        \"date_of_birth\": null,\n        \"telephone_number\": null,\n        \"email\": null,\n        \"remarks\": null,\n        \"trucking_company\": \"TruckingCo1\",\n        \"allowed_until\": null,\n        \"created_at\": \"2017-09-15T15:47:12Z\",\n        \"updated_at\": \"2023-09-15T15:47:12Z\"\n      },\n      \"truck_visit\": null,\n      \"comment\": \"\",\n      \"reschedule_reason\": null,\n      \"purposes\": [\n        {\n          \"purpose_type\": \"drop_off\",\n          \"cargo_type\": \"container\",\n          \"cargo_status\": \"full\",\n          \"cargo\": \"CMAU2100410\",\n          \"container_usage\": null,\n          \"booking\": \"RUNNINGBOOKING\",\n          \"bill_of_lading\": \"BOL1092719\",\n          \"delivery_order\": null\n        }\n      ]\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/appointments/create","name":"create","apis":[{"api_url":"/api/v1/appointments","http_method":"POST","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eCreates a new appointment.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"appointment_slot_id","full_name":"appointment_slot_id","description":"\n\u003cp\u003eSpecify the appointment slot to which you want to create the appointment. Either appointment_slot_id or appointment_date_time is mandatory for creating an appointment.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"appointment_date_time","full_name":"appointment_date_time","description":"\n\u003cp\u003eThe date and time at which you want to book the appointment for, in ISO 8601 format (Eg 2023-08-18T14:00:00Z) in UTC. Either appointment_date_time or appointment_slot_id is mandatory for creating an appointment.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"terminal","full_name":"terminal","description":"\n\u003cp\u003eThe name of the terminal to which you want to create the appointment. Terminal is mandatory if there are multiple active terminals present for your organization and you are passing the appointment_date_time instead of appointment_slot_id.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"appointment_number","full_name":"appointment_number","description":"\n\u003cp\u003eUnique appointment number. Should be at least 4 characters. Octopi will auto-generate one if not provided.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_license","full_name":"truck_license","description":"\n\u003cp\u003eTruck’s license plate number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_driver_id","full_name":"truck_driver_id","description":"\n\u003cp\u003eTruck driver ID. If this parameter is present, the truck_driver_license parameter will be ignored.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_driver_license","full_name":"truck_driver_license","description":"\n\u003cp\u003eTruck driver’s license number. If the truck_driver_id parameter is present, this will be ignored.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"trucking_company","full_name":"trucking_company","description":"\n\u003cp\u003eThe trucking company for this appointment. If a truck is present, then the trucking company in this parameter must match it. Similarly, if a truck driver is present, the driver’s company must match this trucking company.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"comment","full_name":"comment","description":"\n\u003cp\u003eComments for this appointment.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"purposes","full_name":"purposes","description":"\n\u003cp\u003eTruck visit’s purposes (multiple purposes allowed).\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an Array of nested elements","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"purpose_type","full_name":"purposes[purpose_type]","description":"\n\u003cp\u003ePurpose type.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003edrop_off\u003c/code\u003e, \u003ccode\u003epick_up\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"cargo","full_name":"purposes[cargo]","description":"\n\u003cp\u003eCargo details\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"cargo_type","full_name":"purposes[cargo][cargo_type]","description":"\n\u003cp\u003eType of Cargo.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003echassis\u003c/code\u003e, \u003ccode\u003econtainer\u003c/code\u003e, \u003ccode\u003egeneral_cargo\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_number","full_name":"purposes[cargo][container_number]","description":"\n\u003cp\u003eContainer number. Required if cargo_type is ‘container’ and if the purpose is for drop-off.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_type","full_name":"purposes[cargo][container_type]","description":"\n\u003cp\u003eType of Container (eg 20DV). Required when creating a new container.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_status","full_name":"purposes[cargo][container_status]","description":"\n\u003cp\u003eStatus of container. Required if cargo_type is ‘container’.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eempty\u003c/code\u003e, \u003ccode\u003efull\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"chassis_number","full_name":"purposes[cargo][chassis_number]","description":"\n\u003cp\u003eActive Chassis number. Required if cargo_type is ‘chassis’.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_line","full_name":"purposes[cargo][shipping_line]","description":"\n\u003cp\u003eShipping line code. Required when creating a new container if the purpose is not for pick-up empty.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"goods","full_name":"purposes[cargo][goods]","description":"\n\u003cp\u003eGoods description.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_usage","full_name":"purposes[cargo][container_usage]","description":"\n\u003cp\u003eThe container’s usage.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eexport\u003c/code\u003e, \u003ccode\u003eimport\u003c/code\u003e, \u003ccode\u003eunknown\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]},{"name":"booking","full_name":"purposes[booking]","description":"\n\u003cp\u003eA valid booking number to drop off a full container or pick up an empty.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"bill_of_lading","full_name":"purposes[bill_of_lading]","description":"\n\u003cp\u003eA valid Bill of Lading number to pick up a full container if your organization validates BOLs.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"delivery_order","full_name":"purposes[delivery_order]","description":"\n\u003cp\u003eA valid delivery order number to pick up general cargo\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"interchange","full_name":"purposes[interchange]","description":"\n\u003cp\u003eInterchange details\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"weight","full_name":"purposes[interchange][weight]","description":"\n\u003cp\u003eTotal weight of the container in KGs.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"seals","full_name":"purposes[interchange][seals]","description":"\n\u003cp\u003eComma separated values of seals on the container\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}]}],"returns":[],"examples":["curl --location --request POST 'https://app.octopi.co/api/v1/appointments'     --header 'Authorization: Bearer token_value'     --header 'Content-Type: application/json'     --data-raw '{\n  \"appointment_date_time\": \"2023-08-21T07:00:00Z\",\n  \"appointment_number\": \"APPT1234\",\n  \"truck_license\": \"TN01CH0010\",\n  \"truck_driver\": \"LIDEW9784FY\",\n  \"trucking_company\": \"TruckingCo1\",\n  \"comment\": \"Pick Up Cargo\",\n  \"purposes\": [\n    {\n      \"purpose_type\": \"pick_up\",\n      \"cargo\":{\n        \"cargo_type\": \"container\",\n        \"container_number\": \"CMAU2100446\",\n        \"container_status\": \"full\",\n        \"container_usage\": \"export\"\n      },\n      \"interchange\":{\n        \"weight\": 12000,\n        \"seals\": \"SEAL1,SEAL2,SEAL3\"\n      },\n      \"booking\": \"RUNNINGBOOKING\"\n    }\n  ]\n}'\n","{\n  \"appointment_number\": \"APPT1234\",\n  \"appointment_slot_id\": 1078,\n  \"appointment_date\": \"2023-08-21\",\n  \"appointment_timings\": \"12:00 PM - 01:00 PM\",\n  \"status\": \"Pending\",\n  \"truck\": \"TN01CH0010\",\n  \"truck_driver\": null,\n  \"truck_driver_license_number\": null,\n  \"trucking_company\": \"TruckingCo1\",\n  \"truck_visit\": null,\n  \"comment\": \"Pick Up Cargo\",\n  \"reschedule_reason\": null,\n  \"purposes\": [\n    {\n      \"purpose_type\": \"pick_up\",\n      \"cargo_type\": \"container\",\n      \"cargo_status\": \"full\",\n      \"cargo\": \"CMAU2100446\",\n      \"container_usage\": \"export\",\n      \"booking\": \"RUNNINGBOOKING\",\n      \"interchange\":{\n        \"weight\": 12000,\n        \"seals\": \"SEAL1,SEAL2,SEAL3\"\n      },\n      \"bill_of_lading\": null,\n      \"delivery_order\": null\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/appointments/show","name":"show","apis":[{"api_url":"/api/v1/appointments/:appointment_number","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eReturns information about a specific appointment.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"appointment_number","full_name":"appointment_number","description":"\n\u003cp\u003eThe Appointment’s number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/appointments/OCTOAPPT129903\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"'\n","{\n  \"appointment_number\": \"OCTOAPPT129903\",\n  \"appointment_slot_id\": 299,\n  \"appointment_date\": \"2023-06-02\",\n  \"appointment_timings\": \"06:30 PM - 07:30 PM\",\n  \"status\": \"Completed\",\n  \"truck\": \"TN01CH0007\",\n  \"truck_driver\": {\n    \"id\": 1234,\n    \"fullname\": \"John Doe\",\n    \"license_number\": \"N/A\",\n    \"twic\": \"\",\n    \"number\": \"633353\",\n    \"active\": true,\n    \"date_of_birth\": null,\n    \"telephone_number\": null,\n    \"email\": null,\n    \"remarks\": null,\n    \"trucking_company\": \"FAST DELIVERIES, INC\",\n    \"allowed_until\": null,\n    \"created_at\": \"2017-09-15T15:47:12Z\",\n    \"updated_at\": \"2023-09-15T15:47:12Z\"\n  },\n  \"truck_visit\": 24,\n  \"comment\": \"\",\n  \"reschedule_reason\": null,\n  \"purposes\": [\n    {\n      \"purpose_type\": \"pick_up\",\n      \"cargo_type\": \"container\",\n      \"cargo_status\": \"full\",\n      \"cargo\": \"ABCZ120E127\",\n      \"container_usage\": \"export\",\n      \"booking\": null,\n      \"bill_of_lading\": null,\n      \"delivery_order\": null\n    },\n    {\n      \"purpose_type\": \"drop_off\",\n      \"cargo_type\": \"container\",\n      \"cargo_status\": \"full\",\n      \"cargo\": \"ABCZ120E385\",\n      \"container_usage\": \"export\",\n      \"booking\": \"RUNNINGBOOKING\",\n      \"bill_of_lading\": null,\n      \"delivery_order\": null\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/appointments/update","name":"update","apis":[{"api_url":"/api/v1/appointments/:appointment_number","http_method":"PUT","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eUpdates the fields of an existing appointment and/or reschedule an appointment.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"appointment_number","full_name":"appointment_number","description":"\n\u003cp\u003eThe appointment’s number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"appointment_slot_id","full_name":"appointment_slot_id","description":"\n\u003cp\u003eSpecify the new appointment slot to which you want to reschedule the appointment to. Either appointment_slot_id or appointment_date_time is mandatory for rescheduling an appointment.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"appointment_date_time","full_name":"appointment_date_time","description":"\n\u003cp\u003eThe date and time at which you want to reschedule the appointment for, in ISO 8601 format (Eg 2023-08-18T14:00:00Z) in UTC. Either appointment_date_time or appointment_slot_id is mandatory for rescheduling an appointment.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"terminal","full_name":"terminal","description":"\n\u003cp\u003eThe name of the terminal to which you want to reschedule the appointment. Terminal is mandatory if there are multiple active terminals present for your organization and you are passing the appointment_date_time instead of appointment_slot_id.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"reschedule_reason","full_name":"reschedule_reason","description":"\n\u003cp\u003eThe reason for rescheduling the appointment. Required if you want to reschedule the appointment.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_license","full_name":"truck_license","description":"\n\u003cp\u003eTruck’s license plate number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_driver_id","full_name":"truck_driver_id","description":"\n\u003cp\u003eTruck driver ID. If this parameter is present, the truck_driver_license parameter will be ignored.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_driver_license","full_name":"truck_driver_license","description":"\n\u003cp\u003eTruck driver’s license number. If the truck_driver_id parameter is present, this will be ignored.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"trucking_company","full_name":"trucking_company","description":"\n\u003cp\u003eThe trucking company for this appointment. If a truck is present, then the trucking company in this parameter must match it. Similarly, if a truck driver is present, the driver’s company must match this trucking company.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"comment","full_name":"comment","description":"\n\u003cp\u003eComments for this appointment.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"purposes","full_name":"purposes","description":"\n\u003cp\u003eTruck visit’s purposes (multiple purposes allowed). The purposes provided in this API will override the existing purposes in that appointment.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an Array of nested elements","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"cargo","full_name":"purposes[cargo]","description":"\n\u003cp\u003eCargo details\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"purpose_type","full_name":"purposes[cargo][purpose_type]","description":"\n\u003cp\u003ePurpose type.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003edrop_off\u003c/code\u003e, \u003ccode\u003epick_up\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"cargo_type","full_name":"purposes[cargo][cargo_type]","description":"\n\u003cp\u003eType of Cargo.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003echassis\u003c/code\u003e, \u003ccode\u003econtainer\u003c/code\u003e, \u003ccode\u003egeneral_cargo\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_number","full_name":"purposes[cargo][container_number]","description":"\n\u003cp\u003eContainer number. Required if cargo_type is ‘container’ and if the purpose is not for pick-up empty.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_type","full_name":"purposes[cargo][container_type]","description":"\n\u003cp\u003eType of Container (eg 20DV). Required when creating a new container.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_status","full_name":"purposes[cargo][container_status]","description":"\n\u003cp\u003eStatus of container. Required if cargo_type is ‘container’.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eempty\u003c/code\u003e, \u003ccode\u003efull\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"chassis_number","full_name":"purposes[cargo][chassis_number]","description":"\n\u003cp\u003eActive Chassis number. Required if cargo_type is ‘chassis’.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_line","full_name":"purposes[cargo][shipping_line]","description":"\n\u003cp\u003eShipping line code. Required when creating a new container if the purpose is not for pick-up empty.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"goods","full_name":"purposes[cargo][goods]","description":"\n\u003cp\u003eGoods description.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_usage","full_name":"purposes[cargo][container_usage]","description":"\n\u003cp\u003eThe container’s usage.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eexport\u003c/code\u003e, \u003ccode\u003eimport\u003c/code\u003e, \u003ccode\u003eunknown\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]},{"name":"interchange","full_name":"purposes[interchange]","description":"\n\u003cp\u003eInterchange details\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"weight","full_name":"purposes[interchange][weight]","description":"\n\u003cp\u003eTotal weight of the container in KGs.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"seals","full_name":"purposes[interchange][seals]","description":"\n\u003cp\u003eComma separated values of seals on the container\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]},{"name":"booking","full_name":"purposes[booking]","description":"\n\u003cp\u003eA valid booking number to drop off a full container or pick up an empty.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"bill_of_lading","full_name":"purposes[bill_of_lading]","description":"\n\u003cp\u003eA valid Bill of Lading number to pick up a full container if your organization validates BOLs.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"delivery_order","full_name":"purposes[delivery_order]","description":"\n\u003cp\u003eA valid delivery order number to pick up general cargo\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl --location --request PUT 'https://app.octopi.co/api/v1/appointments/OCTOAPPT1108301'     --header 'Authorization: Bearer token_value'     --header 'Content-Type: application/json'     --data-raw '{\n  \"appointment_date_time\": \"2023-08-24T09:30:00Z\",\n  \"terminal\": \"Main Terminal\",\n  \"reschedule_reason\": \"Late Arrival.\",\n  \"truck_driver_license\": \"LIDEW9784FY\",\n  \"comment\": \"Rescheduled appointment due to delay, changed truck driver, and updated container.\",\n  \"purposes\": [\n    {\n      \"purpose_type\": \"drop_off\",\n      \"cargo\": {\n        \"cargo_type\": \"container\",\n        \"container_number\": \"CMAU2101273\",\n        \"container_status\": \"full\"\n      },\n      \"interchange\":{\n        \"weight\": 12000,\n        \"seals\": \"SEAL1,SEAL2,SEAL3\"\n      },\n      \"booking\": \"RUNNINGBOOKING\",\n      \"delivery_order\": \"dol\"\n    }\n  ]\n}'\n","{\n  \"appointment_number\": \"OCTOAPPT1108602\",\n  \"appointment_slot_id\": 1096,\n  \"appointment_date\": \"2023-08-24\",\n  \"appointment_timings\": \"03:00 PM - 04:00 PM\",\n  \"status\": \"Pending\",\n  \"truck\": \"TN01CH0010\",\n  \"truck_driver\": {\n    \"id\": 1234,\n    \"fullname\": \"John Doe\",\n    \"license_number\": \"LIDEW9784FY\",\n    \"twic\": \"\",\n    \"number\": \"633353\",\n    \"active\": true,\n    \"date_of_birth\": null,\n    \"telephone_number\": null,\n    \"email\": null,\n    \"remarks\": null,\n    \"trucking_company\": \"FAST DELIVERIES, INC\",\n    \"allowed_until\": null,\n    \"created_at\": \"2017-09-15T15:47:12Z\",\n    \"updated_at\": \"2023-09-15T15:47:12Z\"\n  },\n  \"trucking_company\": \"TruckingCo1\",\n  \"truck_visit\": null,\n  \"comment\": \"Rescheduled appointment due to delay, changed truck driver, and updated container.\",\n  \"reschedule_reason\": \"Late Arrival.\",\n  \"purposes\": [\n    {\n      \"purpose_type\": \"drop_off\",\n      \"cargo_type\": \"container\",\n      \"cargo_status\": \"full\",\n      \"cargo\": \"CMAU2101273\",\n      \"container_usage\": null,\n      \"interchange\":{\n        \"weight\": 12000,\n        \"seals\": \"SEAL1,SEAL2,SEAL3\"\n      },\n      \"booking\": \"RUNNINGBOOKING\",\n      \"bill_of_lading\": null,\n      \"delivery_order\": \"dol\"\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/appointments/cancel","name":"cancel","apis":[{"api_url":"/api/v1/appointments/:appointment_number/cancel","http_method":"PUT","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eCancels the appointment\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"appointment_number","full_name":"appointment_number","description":"\n\u003cp\u003eThe appointment’s number\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"cancellation_reason","full_name":"cancellation_reason","description":"\n\u003cp\u003eThe reason for cancelling the appointment\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl --location --request PUT 'https://app.octopi.co/api/v1/appointments/OCTOAPPT158409/cancel'   --header 'Authorization: Bearer token_value'   --header 'Content-Type: application/json'   --data-raw '{\n  \"cancellation_reason\": \"Cancellation from client side\"\n  }'\n","{\n  \"appointment_number\": \"OCTOAPPT158409\",\n  \"appointment_slot_id\": 584,\n  \"appointment_date\": \"2023-06-26\",\n  \"appointment_timings\": \"03:00 PM - 04:00 PM\",\n  \"status\": \"Cancelled\",\n  \"truck\": \"TN01AN1982\",\n  \"trucking_company\": null,\n  \"truck_visit\": null,\n  \"comment\": null,\n  \"reschedule_reason\": null,\n  \"cancelled_at\": \"2023-08-21T13:31:56.191+05:30\",\n  \"cancelled_by\": \"System\",\n  \"cancellation_reason\": \"Cancellation from client side\",\n  \"purposes\": []\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/appointments/appointment_slots","name":"appointment_slots","apis":[{"api_url":"/api/v1/appointments/appointment_slots","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eReturns all the appointment slots with availablity for a given date.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"appointment_date","full_name":"appointment_date","description":"\n\u003cp\u003eDate for which you want the appointment slot details for. Must be formatted as YYYY-MM-DD.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"terminal","full_name":"terminal","description":"\n\u003cp\u003eThe name of the terminal for which you want the appointment slots for. Terminal is mandatory if there are multiple active terminals present for your organization.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl --location --request GET 'https://app.octopi.co/api/v1/appointments/appointment_slots'     --header 'Authorization: Token token==ADD TOKEN HERE'     --header 'Content-Type: application/json'     --data-raw '{\n  \"appointment_date\": \"2023-08-21\"\n}'\n","{\n  \"appointment_slots\": [\n    {\n      \"appointment_slot_id\": 1098,\n      \"appointment_date\": \"2023-08-21\",\n      \"slot_timings\": \"04:00 PM - 05:00 PM\",\n      \"terminal\": \"Main Terminal\",\n      \"overall_capacity\": 10,\n      \"available_slots\": 3\n    },\n    {\n      \"appointment_slot_id\": 1120,\n      \"appointment_date\": \"2023-08-21\",\n      \"slot_timings\": \"05:00 PM - 06:00 PM\",\n      \"terminal\": \"Main Terminal\",\n      \"overall_capacity\": 10,\n      \"available_slots\": 5\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"average_truck_visit_durations":{"doc_url":"/api/v1/documentation/1.0/average_truck_visit_durations","id":"average_truck_visit_durations","api_url":"/api/v1","name":"Average_truck_visit_durations","short_description":"This resource allows you to fetch daily average truck visit durations.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/average_truck_visit_durations/index","name":"index","apis":[{"api_url":"/api/v1/average_truck_visit_durations.json","http_method":"GET","short_description":"Gets a list of average truck visit durations","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eEvery day, Octopi keeps track of the average time a truck spends at a terminal. This API endpoint allows you to access these daily average truck visit duration logs.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":400,"description":"Invalid request.","metadata":null},{"code":500,"description":"Internal server error.","metadata":null}],"params":[{"name":"terminal_id","full_name":"terminal_id","description":"\n\u003cp\u003eFilter for a specific terminal. You must pass the terminal’s Octopi ID.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"start_date","full_name":"start_date","description":"\n\u003cp\u003eFilter for days after the start date. Must be formatted as YYYY-MM-DD.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"end_date","full_name":"end_date","description":"\n\u003cp\u003eFilter for days before the end date. Must be formatted as YYYY-MM-DD.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/average_truck_visit_durations.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\" -d '{\"terminal_id\": 5}'\n","{\n   \"average_truck_visit_durations\" : [\n      {\n         \"terminal\" : {\n            \"name\" : \"Main Terminal\",\n            \"id\" : 1\n         },\n         \"day\" : \"2021-05-09\",\n         \"duration\" : 1,\n         \"id\" : 13170\n      },\n      {\n         \"terminal\" : {\n            \"id\" : 2,\n            \"name\" : \"Side Terminal\"\n         },\n         \"duration\" : 37,\n         \"day\" : \"2021-05-09\",\n         \"id\" : 13169\n      },\n      {\n         \"day\" : \"2021-05-07\",\n         \"duration\" : 39,\n         \"id\" : 13150,\n         \"terminal\" : {\n            \"name\" : \"Side Terminal\",\n            \"id\" : 2\n         }\n      },\n      {\n         \"day\" : \"2021-05-07\",\n         \"duration\" : 38,\n         \"id\" : 13151,\n         \"terminal\" : {\n            \"name\" : \"Main Terminal\",\n            \"id\" : 1\n         }\n      }\n   ],\n   \"actions\" : {\n      \"last\" : {\n         \"url\" : \"https://app.octopi.co/api/v1/average_truck_visit_durations.json?page=51\",\n         \"method\" : \"GET\"\n      },\n      \"next\" : {\n         \"method\" : \"GET\",\n         \"url\" : \"https://app.octopi.co/api/v1/average_truck_visit_durations.json?page=2\"\n      },\n      \"index\" : {\n         \"method\" : \"GET\",\n         \"url\" : \"https://app.octopi.co/api/v1/average_truck_visit_durations\"\n      },\n      \"previous\" : {\n         \"method\" : \"GET\",\n         \"url\" : \"https://app.octopi.co/api/v1/average_truck_visit_durations.json?page=0\"\n      }\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"bill_of_ladings":{"doc_url":"/api/v1/documentation/1.0/bill_of_ladings","id":"bill_of_ladings","api_url":"/api/v1","name":"Bill_of_ladings","short_description":"This resource allows you to fetch bill of ladings.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/bill_of_ladings/index","name":"index","apis":[{"api_url":"/api/v1/bill_of_ladings.json","http_method":"GET","short_description":"Returns a list of bill of ladings.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"bl_number","full_name":"bl_number","description":"\n\u003cp\u003eFilter bill of ladings by the bl_number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"voyage_number","full_name":"voyage_number","description":"\n\u003cp\u003eFilter bill of ladings by the voyage number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"vessel_name","full_name":"vessel_name","description":"\n\u003cp\u003eFilter bill of ladings by the vessel name.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"voyage_id","full_name":"voyage_id","description":"\n\u003cp\u003eFilter bill of ladings by the voyage id.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"manifest_id","full_name":"manifest_id","description":"\n\u003cp\u003eFilter bill of ladings by the manifest id.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"client_identifier","full_name":"client_identifier","description":"\n\u003cp\u003eFilter bill of ladings by the client identifier.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/bill_of_ladings.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n","{\n  \"bill_of_ladings\": [\n    {\n      \"id\": 123,\n      \"bl_number\": \"BL_123\",\n      \"manifest\": {\n        \"client_identifier\": \"2d7fe4c0-529a-4732-9927-7eadd9ea7879\",\n        \"manifest_id\": 76015\n      },\n      \"voyage\": {\n        \"voyage_id\": 227966,\n        \"voyage_number\": \"20210801\"\n        \"vessel_name\": \"TEST\"\n      }\n    }\n  ],\n  \"actions\" : {\n    \"next_page\" : {\n        \"method\" : \"GET\",\n        \"url\" : \"https://app.octopi.co/api/v1/bill_of_ladings.json?page=2\u0026per=10\"\n    }\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"bookings":{"doc_url":"/api/v1/documentation/1.0/bookings","id":"bookings","api_url":"/api/v1","name":"Bookings","short_description":"This resource allows you to fetch one booking from Octopi.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/bookings/show","name":"show","apis":[{"api_url":"/api/v1/bookings/:number.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThe booking API endpoint allows querying for one booking.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Booking Not Found","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/bookings/MYBOOKING123.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n","{\n  \"booking_number\": \"MYBOOKING123\",\n  \"number_of_units\": 2,\n  \"goods\": \"Soccer Balls and A piano\",\n  \"ship_name\": \"CMA CGM BRAZIL\",\n  \"status\": \"full\",\n  \"shipping_line\": {\n      \"id\": 12345,\n      \"code\": \"UNKN\",\n      \"name\": \"Unknown\",\n      \"synonyms\": [],\n      \"carrier_type\": \"ocean\",\n      \"address\": \"\",\n      \"empty_container_storage_teu_quota\": null,\n      \"email\": \"\",\n      \"contact_person\": \"\",\n      \"phone\": \"\",\n      \"receive_email_alerts_on_container_damages\": false,\n      \"vat_number\": \"\",\n      \"general_ledger_id\": \"\",\n      \"dock_receipt_email\": \"\"\n  },\n  \"voyage_number\": \"0RT0SN1MA\",\n  \"shipper\": \"Microsoft\",\n  \"consignee\": \"APPLE\",\n  \"port_of_loading\": \"USMIA\",\n  \"port_of_discharge\": \"USPEF\",\n  \"line_items\": [\n    {\n      \"line_item_number\": 1,\n      \"description\": \"Soccer Balls\",\n      \"cargo_type\": \"Container\",\n      \"container_number\": \"SUDU3253351\",\n      \"container_type\": \"20DV\",\n      \"weight\": 10000.0,\n      \"weight_unit_code\": \"kg\",\n      \"temperature\": 0.0,\n      \"temperature_unit\": \"F\",\n      \"reefer_ventilation\": null,\n      \"reefer_humidity\": null,\n      \"hazmat_classes\": []\n    },\n    {\n      \"line_item_number\": 2,\n      \"description\": \"A piano\",\n      \"cargo_type\": \"Container\",\n      \"container_number\": \"AMFU8527917\",\n      \"container_type\": \"45CT\",\n      \"weight\": 15000.0,\n      \"weight_unit_code\": \"kg\",\n      \"temperature\": null,\n      \"temperature_unit\": null,\n      \"reefer_ventilation\": null,\n      \"reefer_humidity\": null,\n      \"hazmat_classes\": []\n    },\n    {\n      \"line_item_number\": 3,\n      \"description\": \"Cotton\",\n      \"cargo_type\": \"General Cargo\",\n      \"packaging_form\": \"PKG\",\n      \"package_type_code\": \"5M\",\n      \"pieces_per_package\": 10,\n      \"commodity_type\": \"AVOCADOS\",\n      \"reference_number\": \"jfhe5ug5\",\n      \"vin\": null,\n      \"make\": null,\n      \"model\": null,\n      \"year\": null,\n      \"color\": null,\n      \"weight\": 50.0,\n      \"net_weight\": 50.0,\n      \"package_weight\": 50.0,\n      \"net_package_weight\": 50.0,\n      \"height\": \"5.0\",\n      \"length\": \"5.0\",\n      \"width\": \"5.0\",\n      \"hazmat_classes\": [\n        1,\n        2\n      ]\n    },\n    {\n      \"line_item_number\": 4,\n      \"description\": \"Cars24\",\n      \"cargo_type\": \"Vehicle\",\n      \"packaging_form\": \"PKG\",\n      \"package_type_code\": \"\",\n      \"pieces_per_package\": null,\n      \"reference_number\": \"\",\n      \"vin\": \"VIN87257371\",\n      \"make\": \"Maruti Suzuki\",\n      \"model\": \"Swift\",\n      \"year\": \"2026\",\n      \"color\": \"Red\",\n      \"commodity_type\": null,\n      \"weight\": 1466.0,\n      \"net_weight\": 1466.0,\n      \"package_weight\": 1466.0,\n      \"net_package_weight\": 1466.0,\n      \"height\": \"9.0\",\n      \"length\": \"18.0\",\n      \"width\": \"10.0\",\n      \"hazmat_classes\": [\n        1\n      ]\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"chargeable_events":{"doc_url":"/api/v1/documentation/1.0/chargeable_events","id":"chargeable_events","api_url":"/api/v1","name":"Chargeable_events","short_description":"This resource allows you to interact with chargeable events in Octopi.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/chargeable_events/index","name":"index","apis":[{"api_url":"/api/v1/chargeable_events.json","http_method":"GET","short_description":"Returns all the chargeable events present in Octopi (paginated).","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"start_time","full_name":"start_time","description":"\n\u003cp\u003eFilters events based on their created time. Represents the start of the timestamp window in ISO 8601 format (Eg. 2024-08-18T14:00:00Z) in UTC.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"end_time","full_name":"end_time","description":"\n\u003cp\u003eFilters events based on their created time. Represents the end of the timestamp window in ISO 8601 format (Eg. 2024-08-18T15:00:00Z) in UTC.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"event_type","full_name":"event_type","description":"\n\u003cp\u003eFilters events based on their event type.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003ecargo_delivered\u003c/code\u003e, \u003ccode\u003ecargo_loaded\u003c/code\u003e, \u003ccode\u003ecargo_unloaded\u003c/code\u003e, \u003ccode\u003ecargo_loading_canceled\u003c/code\u003e, \u003ccode\u003ecargo_unloading_canceled\u003c/code\u003e, \u003ccode\u003erail_cargo_loaded\u003c/code\u003e, \u003ccode\u003erail_cargo_unloaded\u003c/code\u003e, \u003ccode\u003ecargo_held\u003c/code\u003e, \u003ccode\u003ecargo_released\u003c/code\u003e, \u003ccode\u003ehold_applied\u003c/code\u003e, \u003ccode\u003ehold_lifted\u003c/code\u003e, \u003ccode\u003ecargo_overlanded\u003c/code\u003e, \u003ccode\u003ecargo_overshipped\u003c/code\u003e, \u003ccode\u003ecargo_relocation\u003c/code\u003e, \u003ccode\u003ecargo_gated_in\u003c/code\u003e, \u003ccode\u003ecargo_gated_out\u003c/code\u003e, \u003ccode\u003egenset_gated_in\u003c/code\u003e, \u003ccode\u003egenset_gated_out\u003c/code\u003e, \u003ccode\u003ecargo_transferred_in\u003c/code\u003e, \u003ccode\u003ecargo_transferred_out\u003c/code\u003e, \u003ccode\u003ecargo_sent_to_berth\u003c/code\u003e, \u003ccode\u003ecargo_received_from_berth\u003c/code\u003e, \u003ccode\u003ecargo_shifted_from_ship_to_ship\u003c/code\u003e, \u003ccode\u003ecargo_shifted_from_port_to_ship\u003c/code\u003e, \u003ccode\u003ecargo_shifted_from_ship_to_port\u003c/code\u003e, \u003ccode\u003ecargo_stock_transferred\u003c/code\u003e, \u003ccode\u003econtainer_damage_recorded\u003c/code\u003e, \u003ccode\u003econtainer_damage_repaired\u003c/code\u003e, \u003ccode\u003echassis_damage_recorded\u003c/code\u003e, \u003ccode\u003echassis_damage_repaired\u003c/code\u003e, \u003ccode\u003econtainer_cleaned\u003c/code\u003e, \u003ccode\u003econtainer_scanned\u003c/code\u003e, \u003ccode\u003econtainer_resealed\u003c/code\u003e, \u003ccode\u003econtainer_inspected\u003c/code\u003e, \u003ccode\u003ecargo_service_applied\u003c/code\u003e, \u003ccode\u003econtainer_weighted\u003c/code\u003e, \u003ccode\u003echassis_mounted\u003c/code\u003e, \u003ccode\u003echassis_dismounted\u003c/code\u003e, \u003ccode\u003ecargo_stuffed\u003c/code\u003e, \u003ccode\u003econtainer_stripped\u003c/code\u003e, \u003ccode\u003ereefer_plugged_in\u003c/code\u003e, \u003ccode\u003ereefer_plugged_out\u003c/code\u003e, \u003ccode\u003ereefer_pre_trip_inspected\u003c/code\u003e, \u003ccode\u003emovement_deleted\u003c/code\u003e, \u003ccode\u003eberth_request_approved\u003c/code\u003e, \u003ccode\u003evoyage_created\u003c/code\u003e, \u003ccode\u003evoyage_updated\u003c/code\u003e, \u003ccode\u003evoyage_canceled\u003c/code\u003e, \u003ccode\u003evoyage_event_created\u003c/code\u003e, \u003ccode\u003evoyage_event_updated\u003c/code\u003e, \u003ccode\u003evoyage_event_deleted\u003c/code\u003e, \u003ccode\u003especial_lift_operated\u003c/code\u003e, \u003ccode\u003especial_lift_deleted\u003c/code\u003e, \u003ccode\u003etrain_visit_created\u003c/code\u003e, \u003ccode\u003etrain_visit_updated\u003c/code\u003e, \u003ccode\u003etrain_visit_canceled\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"category","full_name":"category","description":"\n\u003cp\u003eFilters events based on their category.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003emarine\u003c/code\u003e, \u003ccode\u003eunit\u003c/code\u003e, \u003ccode\u003erail\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"missing_general_ledger_id","full_name":"missing_general_ledger_id","description":"\n\u003cp\u003eFilters events to include only those without a General Ledger ID. Defaults to false.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e, \u003ccode\u003e1\u003c/code\u003e, \u003ccode\u003e0\u003c/code\u003e.","expected_type":"boolean","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of chargeable events to be displayed. This value defaults to 10 and accepts a maximum of 20.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/chargeable_events/bulk_update' \\\n  -X 'GET' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n","{\n  \"total_count\": 29,\n  \"chargeable_events\": [\n    {\n      \"id\": \"06d22aa5-2563-4b28-91d6-4e9398dd7f5a\",\n      \"occurred_at\": \"2024-11-26T12:33:15.000-05:00\",\n      \"category\": \"unit\",\n      \"event_type\": \"cargo_gated_in\",\n      \"payload\": {\n        \"gate\": {\n          \"id\": 893,\n          \"name\": \"CPS 8\",\n          \"enabled\": true,\n          \"internal\": true,\n          \"client_identifier\": \"\"\n        },\n        \"genset\": null,\n        \"booking\": {\n          \"id\": 840771,\n          \"usage\": null,\n          \"status\": null,\n          \"consignee\": {\n            \"id\": 263848,\n            \"name\": \"BRASSERIE NATIONALE D'HAITI S.A.\",\n            \"email\": \"alix.jeanty@heineken.com, may.laviolette@heineken.com\",\n            \"address\": \"ROUTE DE L   AEROPORTBOULEVARD  TOUSSAINT LOUVERTUREPORT AU  PRINCE  H\"\n          },\n          \"booking_number\": \"62487978/1\",\n          \"number_of_units\": 1,\n          \"port_of_loading\": {\n            \"id\": 2642,\n            \"name\": \"PORT-AU-PRINCE\",\n            \"locode\": \"HTPAP\",\n            \"country_code\": \"HT\"\n          },\n          \"port_of_delivery\": {\n            \"id\": 4213,\n            \"name\": \"VERACRUZ\",\n            \"locode\": \"MXVER\",\n            \"country_code\": \"MX\"\n          },\n          \"port_of_discharge\": {\n            \"id\": 1405,\n            \"name\": \"CARTAGENA\",\n            \"locode\": \"COCTG\",\n            \"country_code\": \"CO\"\n          }\n        },\n        \"chassis\": {\n          \"id\": 18810,\n          \"size\": 20,\n          \"active\": true,\n          \"number\": \"#21\",\n          \"damage_state\": null,\n          \"discarded_at\": null,\n          \"license_plate_number\": null\n        },\n        \"terminal\": {\n          \"id\": 420,\n          \"name\": \"CPS 8\",\n          \"depot_code\": \"HTPAPCPSI\"\n        },\n        \"consignee\": {\n          \"id\": 263848,\n          \"name\": \"BRASSERIE NATIONALE D'HAITI S.A.\",\n          \"email\": \"alix.jeanty@heineken.com, may.laviolette@heineken.com\",\n          \"address\": \"ROUTE DE L   AEROPORTBOULEVARD  TOUSSAINT LOUVERTUREPORT AU  PRINCE  H\"\n        },\n        \"container\": {\n          \"id\": 2627675,\n          \"pin\": null,\n          \"seal\": \"SL00012\",\n          \"tags\": [],\n          \"usage\": \"export\",\n          \"number\": \"BCMU4473161\",\n          \"reefer\": false,\n          \"status\": \"full\",\n          \"weight\": 18143.6948,\n          \"hazardous\": false,\n          \"net_weight\": null,\n          \"flex_fields\": {},\n          \"temperature\": null,\n          \"weight_unit\": \"kg\",\n          \"damage_state\": \"damaged\",\n          \"hazmat_codes\": [],\n          \"out_of_gauge\": false,\n          \"container_type\": {\n            \"id\": 3,\n            \"label\": \"40DV\",\n            \"iso_type\": {\n              \"id\": 50,\n              \"code\": \"42G1\",\n              \"height\": \"8.6\",\n              \"length\": 40,\n              \"category\": \"Dry\",\n              \"tare_weight\": 3825\n            },\n            \"force_reefer\": false\n          },\n          \"extra_attributes\": null,\n          \"reference_number\": \"\",\n          \"temperature_unit\": \"fahrenheit\",\n          \"client_identifier\": null,\n          \"reefer_ventilation\": null,\n          \"set_point_temperature\": \"33.8\"\n        },\n        \"unit_type\": \"container\",\n        \"event_type\": \"cargo_gated_in\",\n        \"gated_in_at\": \"2023-06-19T20:28:00.000Z\",\n        \"interchange\": {\n          \"id\": 2771032,\n          \"tir_number\": 2771032,\n          \"action_type\": \"interchange_in\",\n          \"completed_at\": null\n        },\n        \"movement_id\": 16735176,\n        \"shipping_line\": {\n          \"id\": 31,\n          \"code\": \"HLC\",\n          \"name\": \"Hapag Lloyd\",\n          \"synonyms\": [\n            \"HL\",\n            \"HLC\",\n            \"HLCU\",\n            \"HLL\"\n          ],\n          \"carrier_type\": \"ocean\"\n        },\n        \"arrival_voyage\": {\n          \"id\": 225222,\n          \"ship\": {\n            \"id\": 411,\n            \"imo\": \"9266530\",\n            \"loa\": \"134.44m x 22.5m\",\n            \"name\": \"FALMOUTH\",\n            \"call_sign\": \"5BMN2\",\n            \"vessel_type\": \"container\",\n            \"country_code\": \"CY\",\n            \"gross_tonnage\": 9990,\n            \"number_of_bays\": 31,\n            \"number_of_rows\": 9,\n            \"client_identifier\": null,\n            \"number_of_tiers_above\": 94,\n            \"number_of_tiers_below\": 20\n          },\n          \"number\": \"55E\",\n          \"at_of_berth\": \"2021-04-19T18:24:00.000Z\",\n          \"et_of_berth\": null,\n          \"display_name\": \"FALMOUTH 55E\",\n          \"at_of_anchorage\": \"2021-04-19T16:00:00.000Z\",\n          \"at_of_departure\": \"2021-04-20T16:05:00.000Z\",\n          \"et_of_anchorage\": \"2021-04-19T16:00:00.000Z\",\n          \"et_of_departure\": null,\n          \"at_berth_departure\": \"2021-04-20T15:48:00.000Z\",\n          \"at_of_pilot_boarded\": \"2021-04-19T17:24:00.000Z\",\n          \"et_of_pilot_boarded\": null,\n          \"at_of_customs_clearance\": \"2021-04-19T19:00:00.000Z\",\n          \"at_of_departure_pilot_boarded\": \"2021-04-20T15:36:00.000Z\",\n          \"et_of_departure_pilot_boarded\": null\n        },\n        \"bill_of_lading\": {\n          \"id\": 730050,\n          \"usage\": null,\n          \"weight\": 25586.05,\n          \"remarks\": null,\n          \"exporter\": {\n            \"id\": 50639,\n            \"name\": \"GEODIS FF BELGIUM NV\"\n          },\n          \"notifier\": {\n            \"id\": 4879,\n            \"name\": \"BRASSERIE NATIONALE D'HAITI S.A\"\n          },\n          \"bl_number\": \"HLCUANR210331463\",\n          \"consignee\": {\n            \"id\": 263848,\n            \"name\": \"BRASSERIE NATIONALE D'HAITI S.A.\",\n            \"email\": \"alix.jeanty@heineken.com, may.laviolette@heineken.com\",\n            \"address\": \"ROUTE DE L   AEROPORTBOULEVARD  TOUSSAINT LOUVERTUREPORT AU  PRINCE  H\"\n          },\n          \"port_of_loading\": {\n            \"id\": 7569,\n            \"name\": \"Kingston (JMKST)\",\n            \"locode\": \"JMKST\",\n            \"country_code\": \"JM\"\n          },\n          \"port_of_delivery\": {\n            \"id\": 2642,\n            \"name\": \"PORT-AU-PRINCE\",\n            \"locode\": \"HTPAP\",\n            \"country_code\": \"HT\"\n          },\n          \"client_identifier\": null,\n          \"port_of_discharge\": {\n            \"id\": 2642,\n            \"name\": \"PORT-AU-PRINCE\",\n            \"locode\": \"HTPAP\",\n            \"country_code\": \"HT\"\n          }\n        },\n        \"export_release\": null,\n        \"departure_voyage\": null,\n        \"event_created_at\": \"2024-11-26 17:33:15 UTC\",\n        \"trucking_company\": {\n          \"id\": 4087,\n          \"code\": null,\n          \"name\": \"Caribbean Port Services SA\",\n          \"email\": \"\"\n        }\n      }\n    },\n    {\n      \"id\": \"5517ee97-52a9-4add-9a28-5963a8fb4629\",\n      \"occurred_at\": \"2024-11-15T07:44:59.684-05:00\",\n      \"category\": \"unit\",\n      \"event_type\": \"cargo_delivered\",\n      \"payload\": {\n        \"truck\": {\n          \"id\": 26782,\n          \"number\": \"\",\n          \"truck_driver\": null,\n          \"license_plate\": \"CPSM2\",\n          \"trucking_company\": \"Caribbean Port Services SA\"\n        },\n        \"cargos\": [\n          {\n            \"vehicle\": {\n              \"id\": 939050,\n              \"pin\": null,\n              \"vin\": \"WBAKR0107J0X72930\",\n              \"make\": \"BMW\",\n              \"tags\": [],\n              \"year\": \"2018\",\n              \"color\": null,\n              \"goods\": \"2018 BMW X5 NOIRE\",\n              \"model\": null,\n              \"usage\": \"unknown\",\n              \"volume\": null,\n              \"weight\": 0,\n              \"originid\": \"c59aa26b-5b60-4373-b997-b38f1913c35f\",\n              \"quantity\": 1,\n              \"hazardous\": false,\n              \"net_weight\": null,\n              \"flex_fields\": {},\n              \"weight_unit\": \"kg\",\n              \"damage_state\": \"not_damaged\",\n              \"hazmat_codes\": [],\n              \"package_weight\": null,\n              \"shipping_marks\": null,\n              \"extra_attributes\": null,\n              \"reference_number\": null,\n              \"temperature_unit\": \"fahrenheit\",\n              \"client_identifier\": null,\n              \"package_type_code\": null,\n              \"net_package_weight\": null,\n              \"pieces_per_package\": null,\n              \"package_type_description\": null\n            },\n            \"consignee\": {\n              \"id\": 269842,\n              \"name\": \"XAVIER JOB\",\n              \"email\": null,\n              \"address\": \"ADD SARTHE 55 RUE GERMAIN 67PORT AU PRINCEHAITITEL  43  6 49  \"\n            },\n            \"unit_type\": \"vehicle\",\n            \"shipping_line\": {\n              \"id\": 20,\n              \"code\": \"CROW\",\n              \"name\": \"CROWLEY LINER SERVICES,INC\",\n              \"synonyms\": [\n                \"CAT\",\n                \"CLA\",\n                \"CLAM\",\n                \"CLS\",\n                \"CRL\",\n                \"CRLY\",\n                \"CRO\",\n                \"CROWLEY\",\n                \"CRY\"\n              ],\n              \"carrier_type\": \"ocean\"\n            },\n            \"arrival_voyage\": null,\n            \"bills_of_lading\": [],\n            \"stripped_from_container\": null\n          },\n          {\n            \"breakbulk\": {\n              \"id\": 2552946,\n              \"pin\": null,\n              \"vin\": \"\",\n              \"make\": \"\",\n              \"tags\": [],\n              \"year\": \"\",\n              \"color\": \"pink\",\n              \"goods\": \"\",\n              \"model\": \"\",\n              \"usage\": \"import\",\n              \"volume\": null,\n              \"weight\": 4082.4,\n              \"originid\": null,\n              \"quantity\": 1,\n              \"hazardous\": false,\n              \"net_weight\": null,\n              \"flex_fields\": {},\n              \"weight_unit\": \"kg\",\n              \"damage_state\": \"not_damaged\",\n              \"hazmat_codes\": [],\n              \"package_weight\": null,\n              \"shipping_marks\": \"\",\n              \"extra_attributes\": null,\n              \"reference_number\": \"\",\n              \"temperature_unit\": \"fahrenheit\",\n              \"client_identifier\": null,\n              \"package_type_code\": \"\",\n              \"net_package_weight\": null,\n              \"pieces_per_package\": null,\n              \"package_type_description\": null\n            },\n            \"consignee\": {\n              \"id\": 10488,\n              \"name\": \"CROWLEY LATIN AMERICA SERVICE\",\n              \"email\": null,\n              \"address\": \"TORRE PANAMERICANS AV ABRAHAM LINCOLN 504 PO\"\n            },\n            \"unit_type\": \"breakbulk\",\n            \"shipping_line\": {\n              \"id\": 20,\n              \"code\": \"CROW\",\n              \"name\": \"CROWLEY LINER SERVICES,INC\",\n              \"synonyms\": [\n                \"CAT\",\n                \"CLA\",\n                \"CLAM\",\n                \"CLS\",\n                \"CRL\",\n                \"CRLY\",\n                \"CRO\",\n                \"CROWLEY\",\n                \"CRY\"\n              ],\n              \"carrier_type\": \"ocean\"\n            },\n            \"arrival_voyage\": {\n              \"id\": 224916,\n              \"ship\": {\n                \"id\": 367,\n                \"imo\": \"9355472\",\n                \"loa\": \"139.6 x 22.39\",\n                \"name\": \"TUCANA J\",\n                \"call_sign\": \"V2CX7\",\n                \"vessel_type\": \"container\",\n                \"country_code\": \"AG\",\n                \"gross_tonnage\": 8246,\n                \"number_of_bays\": 35,\n                \"number_of_rows\": 9,\n                \"client_identifier\": null,\n                \"number_of_tiers_above\": 94,\n                \"number_of_tiers_below\": 8\n              },\n              \"number\": \"1013N\",\n              \"at_of_berth\": \"2021-04-06T17:30:00.000-04:00\",\n              \"et_of_berth\": null,\n              \"display_name\": \"TUCANA J 1013N\",\n              \"at_of_anchorage\": \"2021-04-06T16:10:00.000-04:00\",\n              \"at_of_departure\": \"2021-04-07T00:10:00.000-04:00\",\n              \"et_of_anchorage\": \"2021-04-06T17:00:00.000-04:00\",\n              \"et_of_departure\": null,\n              \"at_berth_departure\": \"2021-04-07T00:00:00.000-04:00\",\n              \"at_of_pilot_boarded\": \"2021-04-06T16:50:00.000-04:00\",\n              \"et_of_pilot_boarded\": null,\n              \"at_of_customs_clearance\": \"2021-04-06T18:14:00.000-04:00\",\n              \"at_of_departure_pilot_boarded\": \"2021-04-06T23:50:00.000-04:00\",\n              \"et_of_departure_pilot_boarded\": null\n            },\n            \"bills_of_lading\": [\n              {\n                \"id\": 718208,\n                \"usage\": null,\n                \"weight\": 65318.4,\n                \"remarks\": null,\n                \"exporter\": {\n                  \"id\": 5782,\n                  \"name\": \"CROWLEY LATIN AMERICA SERVICES\"\n                },\n                \"notifier\": {\n                  \"id\": 431,\n                  \"name\": \"CROWLEY LATIN AMERICA SERVICES\"\n                },\n                \"bl_number\": \"EMTS1M000228\",\n                \"consignee\": {\n                  \"id\": 10488,\n                  \"name\": \"CROWLEY LATIN AMERICA SERVICE\",\n                  \"email\": null,\n                  \"address\": \"TORRE PANAMERICANS AV ABRAHAM LINCOLN 504 PO\"\n                },\n                \"port_of_loading\": {\n                  \"id\": 7205,\n                  \"name\": \"PORT EVERGLADES\",\n                  \"locode\": \"USPEF\",\n                  \"country_code\": \"US\"\n                },\n                \"port_of_delivery\": {\n                  \"id\": 2642,\n                  \"name\": \"PORT-AU-PRINCE\",\n                  \"locode\": \"HTPAP\",\n                  \"country_code\": \"HT\"\n                },\n                \"client_identifier\": null,\n                \"port_of_discharge\": {\n                  \"id\": 2642,\n                  \"name\": \"PORT-AU-PRINCE\",\n                  \"locode\": \"HTPAP\",\n                  \"country_code\": \"HT\"\n                }\n              }\n            ],\n            \"stripped_from_container\": null\n          },\n          {\n            \"vehicle\": {\n              \"id\": 2720103,\n              \"pin\": null,\n              \"vin\": \"VF3221DA212063421\",\n              \"make\": null,\n              \"tags\": [],\n              \"year\": null,\n              \"color\": null,\n              \"goods\": \"2002 PEUGEOT GRISE 9693\",\n              \"model\": null,\n              \"usage\": \"unknown\",\n              \"volume\": null,\n              \"weight\": 0,\n              \"originid\": \"10cecd09-e20c-43e0-87b5-8752d9691345\",\n              \"quantity\": 1,\n              \"hazardous\": false,\n              \"net_weight\": null,\n              \"flex_fields\": {},\n              \"weight_unit\": \"kg\",\n              \"damage_state\": \"not_damaged\",\n              \"hazmat_codes\": [],\n              \"package_weight\": null,\n              \"shipping_marks\": null,\n              \"extra_attributes\": null,\n              \"reference_number\": null,\n              \"temperature_unit\": \"fahrenheit\",\n              \"client_identifier\": null,\n              \"package_type_code\": null,\n              \"net_package_weight\": null,\n              \"pieces_per_package\": null,\n              \"package_type_description\": null\n            },\n            \"consignee\": {\n              \"id\": 19744,\n              \"name\": \"CHATELAIN CARGO SERVICES S.A.\",\n              \"email\": \"pvc@chatelaincargo.com\",\n              \"address\": \"SA42 AIRPORT ROADPORT AU PRINCE  HAITIPVC CHATELAINCARGO COMTEL   5 9 \"\n            },\n            \"unit_type\": \"vehicle\",\n            \"shipping_line\": {\n              \"id\": 31,\n              \"code\": \"HLC\",\n              \"name\": \"Hapag Lloyd\",\n              \"synonyms\": [\n                \"HL\",\n                \"HLC\",\n                \"HLCU\",\n                \"HLL\"\n              ],\n              \"carrier_type\": \"ocean\"\n            },\n            \"arrival_voyage\": null,\n            \"bills_of_lading\": [\n              {\n                \"id\": 739582,\n                \"usage\": null,\n                \"weight\": 29960,\n                \"remarks\": null,\n                \"exporter\": {\n                  \"id\": 39299,\n                  \"name\": \"IMPORT EXPORT STOCKAGE\"\n                },\n                \"notifier\": {\n                  \"id\": 2,\n                  \"name\": \"CHATELAIN CARGO SERVICES\"\n                },\n                \"bl_number\": \"HLCULE1210387346\",\n                \"consignee\": {\n                  \"id\": 19744,\n                  \"name\": \"CHATELAIN CARGO SERVICES S.A.\",\n                  \"email\": \"pvc@chatelaincargo.com\",\n                  \"address\": \"SA42 AIRPORT ROADPORT AU PRINCE  HAITIPVC CHATELAINCARGO COMTEL   5 9 \"\n                },\n                \"port_of_loading\": {\n                  \"id\": 7569,\n                  \"name\": \"Kingston (JMKST)\",\n                  \"locode\": \"JMKST\",\n                  \"country_code\": \"JM\"\n                },\n                \"port_of_delivery\": {\n                  \"id\": 2642,\n                  \"name\": \"PORT-AU-PRINCE\",\n                  \"locode\": \"HTPAP\",\n                  \"country_code\": \"HT\"\n                },\n                \"client_identifier\": null,\n                \"port_of_discharge\": {\n                  \"id\": 2642,\n                  \"name\": \"PORT-AU-PRINCE\",\n                  \"locode\": \"HTPAP\",\n                  \"country_code\": \"HT\"\n                }\n              }\n            ],\n            \"stripped_from_container\": null\n          },\n          {\n            \"breakbulk\": {\n              \"id\": 4337788,\n              \"pin\": null,\n              \"vin\": null,\n              \"make\": null,\n              \"tags\": [],\n              \"year\": null,\n              \"color\": null,\n              \"goods\": \"qwerty\",\n              \"model\": null,\n              \"usage\": \"unknown\",\n              \"volume\": null,\n              \"weight\": 0,\n              \"originid\": \"7dc57953-81e4-4fb1-9850-a75e9fcdfbd4\",\n              \"quantity\": 1,\n              \"hazardous\": false,\n              \"net_weight\": null,\n              \"flex_fields\": {},\n              \"weight_unit\": \"kg\",\n              \"damage_state\": \"not_damaged\",\n              \"hazmat_codes\": [],\n              \"package_weight\": null,\n              \"shipping_marks\": \"qwerty\",\n              \"extra_attributes\": null,\n              \"reference_number\": null,\n              \"temperature_unit\": \"fahrenheit\",\n              \"client_identifier\": null,\n              \"package_type_code\": null,\n              \"net_package_weight\": null,\n              \"pieces_per_package\": null,\n              \"package_type_description\": null\n            },\n            \"consignee\": {\n              \"id\": 51486,\n              \"name\": \"XTRA MARKET\",\n              \"email\": \"\",\n              \"address\": \"PUBLIC\u0026apos;S PLAZA CANAPE VERT PORT AU PRINCE,   \"\n            },\n            \"unit_type\": \"breakbulk\",\n            \"shipping_line\": {\n              \"id\": 116,\n              \"code\": \"XP\",\n              \"name\": \"X-press Feeder\",\n              \"synonyms\": [],\n              \"carrier_type\": \"ocean\"\n            },\n            \"arrival_voyage\": null,\n            \"bills_of_lading\": [],\n            \"stripped_from_container\": null\n          }\n        ],\n        \"remarks\": \"\",\n        \"consignee\": null,\n        \"event_type\": \"cargo_delivered\",\n        \"delivery_id\": 196228,\n        \"truck_visit\": {\n          \"id\": 2330683,\n          \"gate\": {\n            \"id\": 893,\n            \"name\": \"CPS 8\",\n            \"client_identifier\": \"\"\n          },\n          \"truck\": {\n            \"id\": 26708,\n            \"make\": \"\",\n            \"year\": null,\n            \"color\": \"white\",\n            \"model\": \"\",\n            \"active\": true,\n            \"number\": \"\",\n            \"weight\": null,\n            \"is_mule\": false,\n            \"created_at\": \"2020-10-16T10:01:32.126-04:00\",\n            \"updated_at\": \"2020-10-16T10:06:04.570-04:00\",\n            \"discarded_at\": null,\n            \"truck_driver\": null,\n            \"allowed_until\": null,\n            \"license_plate\": \"CPSM11\",\n            \"organization_id\": 1,\n            \"truck_driver_id\": null,\n            \"trucking_company\": \"Caribbean Port Services SA\",\n            \"trucking_company_id\": 4087\n          },\n          \"terminal\": {\n            \"id\": 420,\n            \"name\": \"CPS 8\",\n            \"active\": true,\n            \"edi_id\": \"\",\n            \"boundaries\": \"[[-72.31342527176048,18.567334415556275],[-72.31237766973884,18.56832077717621],[-72.311889260692,18.567837661989557],[-72.31297225467164,18.566891557455108],[-72.31342527176048,18.567334415556275]]\",\n            \"created_at\": \"2020-07-30T11:01:21.906-04:00\",\n            \"depot_code\": \"HTPAPCPSI\",\n            \"updated_at\": \"2023-07-28T06:26:17.539-04:00\",\n            \"organization_id\": 1,\n            \"client_identifier\": \"\",\n            \"terminal_manager_id\": null,\n            \"max_truck_visit_duration\": 60,\n            \"appointment_end_tolerance_mins\": null,\n            \"appointment_start_tolerance_mins\": null\n          },\n          \"gated_in_at\": \"2024-11-15T06:31:07.247-05:00\",\n          \"gated_out_at\": null,\n          \"truck_driver\": {\n            \"id\": 233604,\n            \"twic\": null,\n            \"number\": null,\n            \"lastname\": \"Kamal\",\n            \"firstname\": \"Kamal\",\n            \"license_number\": \"N/A\"\n          },\n          \"trucking_company\": {\n            \"id\": 4087,\n            \"code\": null,\n            \"name\": \"Caribbean Port Services SA\",\n            \"email\": \"\"\n          }\n        },\n        \"delivered_at\": \"2024-11-15T07:44:59.045-05:00\",\n        \"delivered_to\": \"\",\n        \"truck_driver\": {\n          \"id\": 233604,\n          \"twic\": null,\n          \"number\": null,\n          \"lastname\": \"Kamal\",\n          \"firstname\": \"Kamal\",\n          \"license_number\": \"N/A\"\n        },\n        \"delivery_order\": {\n          \"id\": 49527,\n          \"number\": \"DO\"\n        },\n        \"total_quantity\": 4,\n        \"event_created_at\": \"2024-11-15T07:44:59.684-05:00\"\n      }\n    },\n    {\n      \"id\": \"92f7f4a7-95d0-40f2-bfde-6c8dfe7be5b5\",\n      \"occurred_at\": \"2024-11-14T08:12:21.000-05:00\",\n      \"category\": \"unit\",\n      \"event_type\": \"cargo_loaded\",\n      \"payload\": {\n        \"booking\": null,\n        \"chassis\": {\n          \"id\": 48398,\n          \"size\": 45,\n          \"active\": true,\n          \"number\": \"160001CMCZ\",\n          \"damage_state\": \"not_damaged\",\n          \"discarded_at\": null,\n          \"license_plate_number\": null\n        },\n        \"terminal\": {\n          \"id\": 31,\n          \"name\": \"CPS Yard\",\n          \"depot_code\": \"HTPAPCPSG\"\n        },\n        \"container\": {\n          \"id\": 4284005,\n          \"pin\": null,\n          \"seal\": \"2398169\",\n          \"tags\": [],\n          \"usage\": \"export\",\n          \"number\": \"CSLU2314317\",\n          \"reefer\": false,\n          \"status\": \"empty\",\n          \"weight\": 0,\n          \"hazardous\": false,\n          \"net_weight\": null,\n          \"flex_fields\": {},\n          \"temperature\": null,\n          \"weight_unit\": \"kg\",\n          \"damage_state\": \"not_damaged\",\n          \"hazmat_codes\": [],\n          \"out_of_gauge\": false,\n          \"container_type\": {\n            \"id\": 2,\n            \"label\": \"20DV\",\n            \"iso_type\": {\n              \"id\": 16,\n              \"code\": \"22G1\",\n              \"height\": \"8.6\",\n              \"length\": 20,\n              \"category\": \"Dry\",\n              \"tare_weight\": 2000\n            },\n            \"force_reefer\": false\n          },\n          \"extra_attributes\": null,\n          \"reference_number\": null,\n          \"temperature_unit\": \"fahrenheit\",\n          \"client_identifier\": null,\n          \"reefer_ventilation\": null,\n          \"set_point_temperature\": null\n        },\n        \"loaded_at\": \"2024-11-14T08:12:21.516-05:00\",\n        \"unit_type\": \"container\",\n        \"event_type\": \"cargo_loaded\",\n        \"movement_id\": 16736016,\n        \"overshipped\": false,\n        \"shipping_line\": {\n          \"id\": 96,\n          \"code\": \"COSCO\",\n          \"name\": \"COSCO\",\n          \"synonyms\": [\n            \"COS\",\n            \"COSCONA\"\n          ],\n          \"carrier_type\": \"ocean\"\n        },\n        \"departure_voyage\": {\n          \"id\": 341568,\n          \"ship\": {\n            \"id\": 16570,\n            \"imo\": \"9629419\",\n            \"loa\": \"143 X 22.6\",\n            \"name\": \"X - PRESS MOY\",\n            \"call_sign\": \"9V7939\",\n            \"vessel_type\": \"container\",\n            \"country_code\": \"SG\",\n            \"gross_tonnage\": 9996,\n            \"number_of_bays\": 31,\n            \"number_of_rows\": 9,\n            \"client_identifier\": null,\n            \"number_of_tiers_above\": 92,\n            \"number_of_tiers_below\": 8\n          },\n          \"number\": \"22018N\",\n          \"at_of_berth\": null,\n          \"et_of_berth\": null,\n          \"display_name\": \"X - PRESS MOY 22018N\",\n          \"at_of_anchorage\": null,\n          \"at_of_departure\": null,\n          \"et_of_anchorage\": \"2023-01-12T07:30:00.000-05:00\",\n          \"et_of_departure\": null,\n          \"at_berth_departure\": null,\n          \"at_of_pilot_boarded\": null,\n          \"et_of_pilot_boarded\": null,\n          \"at_of_customs_clearance\": null,\n          \"at_of_departure_pilot_boarded\": null,\n          \"et_of_departure_pilot_boarded\": null\n        },\n        \"event_created_at\": \"2024-11-14T08:12:21.000-05:00\",\n        \"stowage_location\": null\n      }\n    },\n    {\n      \"id\": \"774cb1d1-322b-44ee-a304-b434144f1faf\",\n      \"occurred_at\": \"2024-11-14T08:06:10.000-05:00\",\n      \"category\": \"unit\",\n      \"event_type\": \"cargo_unloaded\",\n      \"payload\": {\n        \"chassis\": null,\n        \"terminal\": {\n          \"id\": 31,\n          \"name\": \"CPS Yard\",\n          \"depot_code\": \"HTPAPCPSG\"\n        },\n        \"container\": {\n          \"id\": 4332670,\n          \"pin\": null,\n          \"seal\": \"0091\",\n          \"tags\": [],\n          \"usage\": \"import\",\n          \"number\": \"BEAU6109510\",\n          \"reefer\": false,\n          \"status\": \"full\",\n          \"weight\": 19477.22,\n          \"hazardous\": false,\n          \"net_weight\": null,\n          \"flex_fields\": {},\n          \"temperature\": null,\n          \"weight_unit\": \"kg\",\n          \"damage_state\": \"not_damaged\",\n          \"hazmat_codes\": [],\n          \"out_of_gauge\": false,\n          \"container_type\": {\n            \"id\": 3,\n            \"label\": \"40DV\",\n            \"iso_type\": {\n              \"id\": 50,\n              \"code\": \"42G1\",\n              \"height\": \"8.6\",\n              \"length\": 40,\n              \"category\": \"Dry\",\n              \"tare_weight\": 3825\n            },\n            \"force_reefer\": false\n          },\n          \"extra_attributes\": null,\n          \"reference_number\": null,\n          \"temperature_unit\": \"fahrenheit\",\n          \"client_identifier\": null,\n          \"reefer_ventilation\": null,\n          \"set_point_temperature\": null\n        },\n        \"unit_type\": \"container\",\n        \"event_type\": \"cargo_unloaded\",\n        \"movement_id\": 16736013,\n        \"unloaded_at\": \"2024-11-14T08:06:09.757-05:00\",\n        \"shipping_line\": {\n          \"id\": 49,\n          \"code\": \"CMACGM\",\n          \"name\": \"CMA CGM\",\n          \"synonyms\": [\n            \"CMA\"\n          ],\n          \"carrier_type\": \"ocean\"\n        },\n        \"arrival_voyage\": {\n          \"id\": 341554,\n          \"ship\": {\n            \"id\": 16657,\n            \"imo\": \"9477347\",\n            \"loa\": \"161.29 X 25.05\",\n            \"name\": \"POLYNESIA\",\n            \"call_sign\": \"A8RO9\",\n            \"vessel_type\": \"other\",\n            \"country_code\": \"LR\",\n            \"gross_tonnage\": 16137,\n            \"number_of_bays\": null,\n            \"number_of_rows\": null,\n            \"client_identifier\": null,\n            \"number_of_tiers_above\": null,\n            \"number_of_tiers_below\": null\n          },\n          \"number\": \"0AGB3S1MA\",\n          \"at_of_berth\": null,\n          \"et_of_berth\": null,\n          \"display_name\": \"POLYNESIA 0AGB3S1MA\",\n          \"at_of_anchorage\": null,\n          \"at_of_departure\": null,\n          \"et_of_anchorage\": \"2023-01-11T07:00:00.000-05:00\",\n          \"et_of_departure\": null,\n          \"at_berth_departure\": null,\n          \"at_of_pilot_boarded\": null,\n          \"et_of_pilot_boarded\": null,\n          \"at_of_customs_clearance\": null,\n          \"at_of_departure_pilot_boarded\": null,\n          \"et_of_departure_pilot_boarded\": null\n        },\n        \"bills_of_lading\": [\n          {\n            \"id\": 1301184,\n            \"usage\": null,\n            \"weight\": 19477.22,\n            \"remarks\": null,\n            \"exporter\": {\n              \"id\": 56233,\n              \"name\": \"SODILAC\"\n            },\n            \"notifier\": {\n              \"id\": 26729,\n              \"name\": \"IMEDIS, S.A.\"\n            },\n            \"bl_number\": \"LHV3035039\",\n            \"consignee\": {\n              \"id\": 474603,\n              \"name\": \"IMEDIS, S.A.\",\n              \"email\": null,\n              \"address\": \"3 RUE LOUISSAINT PORT AU PRINCE OU\"\n            },\n            \"port_of_loading\": {\n              \"id\": 7569,\n              \"name\": \"Kingston (JMKST)\",\n              \"locode\": \"JMKST\",\n              \"country_code\": \"JM\"\n            },\n            \"port_of_delivery\": {\n              \"id\": 2642,\n              \"name\": \"PORT-AU-PRINCE\",\n              \"locode\": \"HTPAP\",\n              \"country_code\": \"HT\"\n            },\n            \"client_identifier\": null,\n            \"port_of_discharge\": {\n              \"id\": 2642,\n              \"name\": \"PORT-AU-PRINCE\",\n              \"locode\": \"HTPAP\",\n              \"country_code\": \"HT\"\n            }\n          }\n        ],\n        \"event_created_at\": \"2024-11-14T08:06:10.000-05:00\"\n      }\n    },\n    {\n      \"id\": \"9766c315-ebb8-4134-90ea-2f7779ed644e\",\n      \"occurred_at\": \"2024-12-03T04:55:41.000-05:00\",\n      \"category\": \"unit\",\n      \"event_type\": \"cargo_gated_out\",\n      \"payload\": {\n        \"gate\": {\n          \"id\": 33,\n          \"name\": \"Dispatch\",\n          \"enabled\": true,\n          \"internal\": false,\n          \"client_identifier\": null\n        },\n        \"genset\": null,\n        \"chassis\": null,\n        \"terminal\": {\n          \"id\": 31,\n          \"name\": \"CPS Yard\",\n          \"depot_code\": \"HTPAPCPSG\"\n        },\n        \"consignee\": {\n          \"id\": 382977,\n          \"name\": \"OCCEAN CHRISTINA\",\n          \"email\": \"\",\n          \"address\": \"\"\n        },\n        \"container\": {\n          \"id\": 4193253,\n          \"pin\": null,\n          \"seal\": \"2396445\",\n          \"tags\": [],\n          \"usage\": \"export\",\n          \"number\": \"AMFU3171607\",\n          \"reefer\": false,\n          \"status\": \"empty\",\n          \"weight\": 0,\n          \"hazardous\": false,\n          \"net_weight\": null,\n          \"flex_fields\": {},\n          \"temperature\": null,\n          \"weight_unit\": \"kg\",\n          \"damage_state\": \"not_damaged\",\n          \"hazmat_codes\": [],\n          \"out_of_gauge\": false,\n          \"container_type\": {\n            \"id\": 2,\n            \"label\": \"20DV\",\n            \"iso_type\": {\n              \"id\": 16,\n              \"code\": \"22G1\",\n              \"height\": \"8.6\",\n              \"length\": 20,\n              \"category\": \"Dry\",\n              \"tare_weight\": 2000\n            },\n            \"force_reefer\": false\n          },\n          \"extra_attributes\": null,\n          \"reference_number\": \"\",\n          \"temperature_unit\": \"fahrenheit\",\n          \"client_identifier\": null,\n          \"reefer_ventilation\": null,\n          \"set_point_temperature\": null\n        },\n        \"unit_type\": \"container\",\n        \"event_type\": \"cargo_gated_out\",\n        \"interchange\": {\n          \"id\": 2771021,\n          \"tir_number\": 2771021,\n          \"action_type\": \"interchange_out\",\n          \"completed_at\": \"2023-01-11T04:19:48.032Z\"\n        },\n        \"movement_id\": 16735727,\n        \"gated_out_at\": \"2024-08-12T13:58:00.329Z\",\n        \"shipping_line\": {\n          \"id\": 31,\n          \"code\": \"HLC\",\n          \"name\": \"Hapag Lloyd\",\n          \"synonyms\": [\n            \"HL\",\n            \"HLC\",\n            \"HLCU\",\n            \"HLL\"\n          ],\n          \"carrier_type\": \"ocean\"\n        },\n        \"arrival_voyage\": {\n          \"id\": 340439,\n          \"ship\": {\n            \"id\": 9041,\n            \"imo\": \"9812200\",\n            \"loa\": \"123 x 16.7 m\",\n            \"name\": \"TOPAZ NEVA\",\n            \"call_sign\": \"V7IX3\",\n            \"vessel_type\": \"container\",\n            \"country_code\": \"MH\",\n            \"gross_tonnage\": 3188,\n            \"number_of_bays\": 23,\n            \"number_of_rows\": 5,\n            \"client_identifier\": null,\n            \"number_of_tiers_above\": 84,\n            \"number_of_tiers_below\": 2\n          },\n          \"number\": \"029A\",\n          \"at_of_berth\": \"2022-11-23T15:40:00.000Z\",\n          \"et_of_berth\": null,\n          \"display_name\": \"TOPAZ NEVA 029A\",\n          \"at_of_anchorage\": \"2022-11-23T10:00:00.000Z\",\n          \"at_of_departure\": \"2022-11-24T04:50:00.000Z\",\n          \"et_of_anchorage\": \"2022-11-23T12:00:00.000Z\",\n          \"et_of_departure\": null,\n          \"at_berth_departure\": \"2022-11-24T04:57:00.000Z\",\n          \"at_of_pilot_boarded\": null,\n          \"et_of_pilot_boarded\": null,\n          \"at_of_customs_clearance\": \"2022-11-23T15:44:00.000Z\",\n          \"at_of_departure_pilot_boarded\": \"2022-11-24T04:30:00.000Z\",\n          \"et_of_departure_pilot_boarded\": null\n        },\n        \"delivery_order\": null,\n        \"export_release\": null,\n        \"event_created_at\": \"2024-12-03T09:55:41.000Z\",\n        \"trucking_company\": null\n      }\n    },\n    {\n      \"id\": \"9c6bccee-add8-47c8-b603-4bb3302c6ca7\",\n      \"occurred_at\": \"2024-12-04T02:32:09.000-05:00\",\n      \"category\": \"unit\",\n      \"event_type\": \"cargo_relocation\",\n      \"payload\": {\n        \"source\": {\n          \"port\": {\n            \"id\": 21759,\n            \"name\": \"SANTO DOMINGO\",\n            \"locode\": \"CLSDO\",\n            \"country_code\": null\n          },\n          \"type\": \"port\"\n        },\n        \"chassis\": null,\n        \"remarks\": null,\n        \"moved_at\": \"2024-12-04T02:32:09.003-05:00\",\n        \"container\": {\n          \"id\": 1332000,\n          \"pin\": null,\n          \"seal\": \"\",\n          \"tags\": [],\n          \"usage\": \"export\",\n          \"number\": \"CMCU4572838\",\n          \"reefer\": false,\n          \"status\": \"empty\",\n          \"weight\": 0,\n          \"hazardous\": false,\n          \"net_weight\": null,\n          \"flex_fields\": {},\n          \"temperature\": null,\n          \"weight_unit\": \"kg\",\n          \"damage_state\": \"not_damaged\",\n          \"hazmat_codes\": [],\n          \"out_of_gauge\": false,\n          \"container_type\": {\n            \"id\": 8,\n            \"label\": \"45HC\",\n            \"iso_type\": {\n              \"id\": 82,\n              \"code\": \"L5G1\",\n              \"height\": \"9.6\",\n              \"length\": 45,\n              \"category\": \"High Cube\",\n              \"tare_weight\": 4000\n            },\n            \"force_reefer\": false\n          },\n          \"current_location\": {\n            \"type\": \"terminal\",\n            \"terminal\": {\n              \"id\": 420,\n              \"name\": \"CPS 8\",\n              \"depot_code\": \"HTPAPCPSI\"\n            }\n          },\n          \"extra_attributes\": null,\n          \"reference_number\": null,\n          \"temperature_unit\": \"fahrenheit\",\n          \"client_identifier\": null,\n          \"reefer_ventilation\": null,\n          \"set_point_temperature\": \"33.8\"\n        },\n        \"equipment\": null,\n        \"unit_type\": \"container\",\n        \"event_type\": \"cargo_relocation\",\n        \"destination\": {\n          \"type\": \"yard_slot\",\n          \"terminal\": {\n            \"id\": 420,\n            \"name\": \"CPS 8\",\n            \"depot_code\": \"HTPAPCPSI\"\n          },\n          \"yard_area\": {\n            \"id\": 2848,\n            \"name\": \"CPS 8\",\n            \"wheeled\": false,\n            \"area_type\": \"warehouse\",\n            \"client_identifier\": \"\"\n          },\n          \"yard_slot\": {\n            \"id\": 577255,\n            \"row\": 0,\n            \"depth\": 0,\n            \"height\": 0,\n            \"custom_name\": \"HAZARDOUS MATRLS (ZONE D)\"\n          }\n        },\n        \"movement_id\": 16736045,\n        \"event_created_at\": \"2024-12-04T02:32:09.000-05:00\"\n      }\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/chargeable_events/bulk_update","name":"bulk_update","apis":[{"api_url":"/api/v1/chargeable_events/bulk_update","http_method":"PUT","short_description":"Performs bulk updates on up to 100 existing events.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"chargeable_events","full_name":"chargeable_events","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be an Array of nested elements","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"event_id","full_name":"chargeable_events[event_id]","description":"\n\u003cp\u003eOctopi ID (UUID) of the chargeable event.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"general_ledger_id","full_name":"chargeable_events[general_ledger_id]","description":"\n\u003cp\u003eCustomer assigned ID for future references.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"notes","full_name":"chargeable_events[notes]","description":"\n\u003cp\u003eNotes or Comments\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/chargeable_events/bulk_update' \\\n  -X 'PUT' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN' \\\n  -d '{\n    \"chargeable_events\": [\n        {\n            \"event_id\": \"876b92d7-1716-4bc8-b9e8-975c1f535bea\",\n            \"general_ledger_id\": \"GL00019432\",\n            \"notes\": \"Some Notes\"\n        },\n        {\n            \"event_id\": \"8230a8b7-71b1-402c-84ad-891f9d7246eb\",\n            \"general_ledger_id\": \"GL00019433\",\n            \"notes\": \"Some Notes 1\"\n        },\n        {\n            \"event_id\": \"c4f82fa0-f3be-4eda-9085-199ad61282d5\",\n            \"general_ledger_id\": \"GL00019434\",\n            \"notes\": \"Some Notes 2\"\n        }\n    ]\n}'\n","{\n  \"success\": true,\n  \"records_updated\": 3\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"chassis":{"doc_url":"/api/v1/documentation/1.0/chassis","id":"chassis","api_url":"/api/v1","name":"Chassis","short_description":"This resource allows you to retrieve data for one chassis from Octopi.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/chassis/index","name":"index","apis":[{"api_url":"/api/v1/chassis.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis chassis API endpoint allows querying all chassis.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Chassis Not Found","metadata":null},{"code":422,"description":"Unprocessable entity","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/chassis.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n","{\n  \"chassis\": [\n    {\n      \"id\": 54756,\n      \"number\": \"44090\",\n      \"active\": false,\n      \"owner\": null,\n      \"size\": 40,\n      \"shipping_line\": {\n        \"id\": 12345,\n        \"code\": \"UNKN\",\n        \"name\": \"Unknown\",\n        \"synonyms\": [],\n        \"carrier_type\": \"ocean\",\n        \"address\": \"\",\n        \"empty_container_storage_teu_quota\": null,\n        \"email\": \"\",\n        \"contact_person\": \"\",\n        \"phone\": \"\",\n        \"receive_email_alerts_on_container_damages\": false,\n        \"vat_number\": \"\",\n        \"general_ledger_id\": \"\",\n        \"dock_receipt_email\": \"\"\n      },\n      \"equipment_condition\": \"Average\",\n      \"current_location\": \"UNKNOWN\",\n      \"container\": \"KOSU1356283\",\n      \"damage_state\": \"Not damaged\",\n      \"license_plate_number\": null,\n      \"created_at\": \"2020-01-31T16:53:29Z\",\n      \"updated_at\": \"2020-09-04T17:14:12Z\"\n    },\n    {\n      \"id\": 47843,\n      \"number\": \"ANCA332101\",\n      \"active\": true,\n      \"owner\": null,\n      \"size\": 20,\n      \"axles\": 2,\n      \"equipment_condition\": null,\n      \"current_location\": \"FREIGHT FORWARDER\",\n      \"container\": \"KOSU145383\",\n      \"damage_state\": \"Not damaged\",\n      \"license_plate_number\": null,\n      \"created_at\": \"2018-11-14T00:05:05Z\",\n      \"updated_at\": \"2021-11-09T03:50:20Z\"\n    }\n  ],\n  \"actions\": {\n    \"index\": {\n      \"method\": \"GET\",\n      \"url\": \"https://app.octopi.co/api/v1/chassis\"\n    },\n    \"next\": {\n      \"method\": \"GET\",\n      \"url\": \"https://app.octopi.co/api/v1/chassis?page=2\"\n    },\n    \"previous\": {\n      \"method\": \"GET\",\n      \"url\": \"https://app.octopi.co/api/v1/chassis?page=0\"\n    },\n    \"last\": {\n      \"method\": \"GET\",\n      \"url\": \"https://app.octopi.co/api/v1/chassis?page=50\"\n    }\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/chassis/show","name":"show","apis":[{"api_url":"/api/v1/chassis/:number.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis chassis API endpoint allows querying for one chassis.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Chassis Not Found","metadata":null},{"code":422,"description":"Unprocessable entity","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/chassis/MYCHASSIS.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n","{\n  \"chassis\": {\n    \"id\": 12345,\n    \"number\": \"MYCHASSIS\",\n    \"active\": true,\n    \"owner\": null,\n    \"size\": 40,\n    \"axles\": 3,\n    \"shipping_line\": {\n      \"id\": 12345,\n      \"code\": \"UNKN\",\n      \"name\": \"Unknown\",\n      \"synonyms\": [],\n      \"carrier_type\": \"ocean\",\n      \"address\": \"\",\n      \"empty_container_storage_teu_quota\": null,\n      \"email\": \"\",\n      \"contact_person\": \"\",\n      \"phone\": \"\",\n      \"receive_email_alerts_on_container_damages\": false,\n      \"vat_number\": \"\",\n      \"general_ledger_id\": \"\",\n      \"dock_receipt_email\": \"\"\n    },\n    \"equipment_condition\": \"Average\",\n    \"current_location\": \"Terminal A\",\n    \"container\": \"ABC12345\",\n    \"damage_state\": \"Not damaged\",\n    \"license_plate_number\": null,\n    \"created_at\": \"2021-01-31T16:53:29Z\",\n    \"updated_at\": \"2021-09-04T17:14:12Z\"\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/chassis/create","name":"create","apis":[{"api_url":"/api/v1/chassis.json","http_method":"POST","short_description":"Create a new chassis","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to create a new chassis.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Chassis Not Found","metadata":null},{"code":422,"description":"Unprocessable entity","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"chassis","full_name":"chassis","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"number","full_name":"chassis[number]","description":"\n\u003cp\u003eThe chassis number. Must be unique.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"active","full_name":"chassis[active]","description":"\n\u003cp\u003eWhether the chassis is active or not.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"owner_type","full_name":"chassis[owner_type]","description":"\n\u003cp\u003eThe owner type for this chassis. Defaults to ‘Organization’.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eContainer owner\u003c/code\u003e, \u003ccode\u003eOrganization\u003c/code\u003e, \u003ccode\u003eOther\u003c/code\u003e, \u003ccode\u003eShipping line\u003c/code\u003e, \u003ccode\u003eTrucking company\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"owner_id","full_name":"chassis[owner_id]","description":"\n\u003cp\u003eThe owner id for this chassis\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"size","full_name":"chassis[size]","description":"\n\u003cp\u003eThe chassis size.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003e10\u003c/code\u003e, \u003ccode\u003e20\u003c/code\u003e, \u003ccode\u003e40\u003c/code\u003e, \u003ccode\u003e45\u003c/code\u003e, \u003ccode\u003e53\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"axles","full_name":"chassis[axles]","description":"\n\u003cp\u003eThe number of axles on the chassis.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_line_id","full_name":"chassis[shipping_line_id]","description":"\n\u003cp\u003eThe shipping line id of this chassis\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"equipment_condition","full_name":"chassis[equipment_condition]","description":"\n\u003cp\u003eThe chassis condition.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"current_location_type","full_name":"chassis[current_location_type]","description":"\n\u003cp\u003eThe chassis current location type.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eConsignee\u003c/code\u003e, \u003ccode\u003eOther\u003c/code\u003e, \u003ccode\u003ePort\u003c/code\u003e, \u003ccode\u003eShip\u003c/code\u003e, \u003ccode\u003eTerminal\u003c/code\u003e, \u003ccode\u003eTrain visit\u003c/code\u003e, \u003ccode\u003eVoyage\u003c/code\u003e, \u003ccode\u003eYard area\u003c/code\u003e, \u003ccode\u003eYard slot\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"current_location_id","full_name":"chassis[current_location_id]","description":"\n\u003cp\u003eThe chassis current location id.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container","full_name":"chassis[container]","description":"\n\u003cp\u003eThe container number for this chassis.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"license_plate_number","full_name":"chassis[license_plate_number]","description":"\n\u003cp\u003eThe chassis license plate number. Must be unique.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/chassis.json\" -X POST -d '{ \"chassis\": { \"number\": \"TEST1234\", \"active\": true, \"owner_type\": \"Shipping Line\", \"owner_id\": 10, \"size\": 40, \"axles\": 3, \"shipping_line_id\": 12345, \"equipment_condition\": \"good\", \"license_plate_number\": \"BACD1234\" } }' -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n  \"chassis\": {\n    \"id\": 4262,\n    \"number\": \"TEST1234\",\n    \"active\": true,\n    \"owner\": \"HAMBURG SUD\",\n    \"size\": 40,\n    \"axles\": 3,\n    \"shipping_line\": {\n      \"id\": 12345,\n      \"code\": \"UNKN\",\n      \"name\": \"Unknown\",\n      \"synonyms\": [],\n      \"carrier_type\": \"ocean\",\n      \"address\": \"\",\n      \"empty_container_storage_teu_quota\": null,\n      \"email\": \"\",\n      \"contact_person\": \"\",\n      \"phone\": \"\",\n      \"receive_email_alerts_on_container_damages\": false,\n      \"vat_number\": \"\",\n      \"general_ledger_id\": \"\",\n      \"dock_receipt_email\": \"\"\n    },\n    \"equipment_condition\": \"Good\",\n    \"current_location\": null,\n    \"container\": null,\n    \"license_plate_number\": \"BACD1234\",\n    \"created_at\": \"2022-07-06T08:39:06Z\",\n    \"updated_at\": \"2022-07-06T08:39:06Z\"\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/chassis/update","name":"update","apis":[{"api_url":"/api/v1/chassis/:number.json","http_method":"PATCH","short_description":"Update an existing chassis","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to update an existing chassis.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Chassis Not Found","metadata":null},{"code":422,"description":"Unprocessable entity","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"chassis","full_name":"chassis","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"number","full_name":"chassis[number]","description":"\n\u003cp\u003eThe chassis number. Must be unique.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"active","full_name":"chassis[active]","description":"\n\u003cp\u003eWhether the chassis is active or not.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"owner_type","full_name":"chassis[owner_type]","description":"\n\u003cp\u003eThe owner type for this chassis. Defaults to ‘Organization’.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eContainer owner\u003c/code\u003e, \u003ccode\u003eOrganization\u003c/code\u003e, \u003ccode\u003eOther\u003c/code\u003e, \u003ccode\u003eShipping line\u003c/code\u003e, \u003ccode\u003eTrucking company\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"owner_id","full_name":"chassis[owner_id]","description":"\n\u003cp\u003eThe owner id for this chassis\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"size","full_name":"chassis[size]","description":"\n\u003cp\u003eThe chassis size.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003e10\u003c/code\u003e, \u003ccode\u003e20\u003c/code\u003e, \u003ccode\u003e40\u003c/code\u003e, \u003ccode\u003e45\u003c/code\u003e, \u003ccode\u003e53\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"axles","full_name":"chassis[axles]","description":"\n\u003cp\u003eThe number of axles on the chassis.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_line_id","full_name":"chassis[shipping_line_id]","description":"\n\u003cp\u003eThe shipping line id of this chassis\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"equipment_condition","full_name":"chassis[equipment_condition]","description":"\n\u003cp\u003eThe chassis condition.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"current_location_type","full_name":"chassis[current_location_type]","description":"\n\u003cp\u003eThe chassis current location type.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eConsignee\u003c/code\u003e, \u003ccode\u003eOther\u003c/code\u003e, \u003ccode\u003ePort\u003c/code\u003e, \u003ccode\u003eShip\u003c/code\u003e, \u003ccode\u003eTerminal\u003c/code\u003e, \u003ccode\u003eTrain visit\u003c/code\u003e, \u003ccode\u003eVoyage\u003c/code\u003e, \u003ccode\u003eYard area\u003c/code\u003e, \u003ccode\u003eYard slot\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"current_location_id","full_name":"chassis[current_location_id]","description":"\n\u003cp\u003eThe chassis current location id.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container","full_name":"chassis[container]","description":"\n\u003cp\u003eThe container number for this chassis.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"license_plate_number","full_name":"chassis[license_plate_number]","description":"\n\u003cp\u003eThe chassis license plate number. Must be unique.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/chassis/TEST1234.json\" -X POST -d '{ \"chassis\": { \"size\": 20, \"equipment_condition\": \"excellent\", \"license_plate_number\": \"NEW123\", \"axles\": 1, \"shipping_line_id\": 12345 } }' -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n  \"chassis\": {\n    \"id\": 4262,\n    \"number\": \"TEST1234\",\n    \"active\": true,\n    \"owner\": \"HAMBURG SUD\",\n    \"size\": 20,\n    \"axles\": 1,\n    \"shipping_line\": {\n      \"id\": 12345,\n      \"code\": \"UNKN\",\n      \"name\": \"Unknown\",\n      \"synonyms\": [],\n      \"carrier_type\": \"ocean\",\n      \"address\": \"\",\n      \"empty_container_storage_teu_quota\": null,\n      \"email\": \"\",\n      \"contact_person\": \"\",\n      \"phone\": \"\",\n      \"receive_email_alerts_on_container_damages\": false,\n      \"vat_number\": \"\",\n      \"general_ledger_id\": \"\",\n      \"dock_receipt_email\": \"\"\n    },\n    \"equipment_condition\": \"Excellent\",\n    \"current_location\": null,\n    \"container\": null,\n    \"license_plate_number\": \"NEW123\",\n    \"created_at\": \"2022-07-06T08:39:06Z\",\n    \"updated_at\": \"2022-07-06T08:39:06Z\"\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"consignees":{"doc_url":"/api/v1/documentation/1.0/consignees","id":"consignees","api_url":"/api/v1","name":"Consignees","short_description":"This resources allows you to create, read, update, or delete consignees in Octopi.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/consignees/index","name":"index","apis":[{"api_url":"/api/v1/consignees","http_method":"GET","short_description":"Returns the list of consignees","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint will allow you to get a list of consignees. You can filter the results using \u003ccode\u003ename\u003c/code\u003e or \u003ccode\u003egeneral_ledger_id\u003c/code\u003e\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"name","full_name":"name","description":"\n\u003cp\u003eAllows you to filter/search consignees by name\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"general_ledger_id","full_name":"general_ledger_id","description":"\n\u003cp\u003eAllows you to filter/search consignees by general ledger ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/consignees.json?name=Octopi\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"consignees\" : [\n      {\n         \"phone\" : null,\n         \"name\" : \"FC OCTOPI\",\n         \"customs_code\" : null,\n         \"general_ledger_id\" : null,\n         \"vat_number\" : \"111\",\n         \"email\" : null,\n         \"billing_contact_email\" : null,\n         \"id\" : 337395,\n         \"address\" : null,\n         \"contact_person\" : null\n      },\n      {\n         \"address\" : null,\n         \"contact_person\" : null,\n         \"id\" : 337386,\n         \"email\" : null,\n         \"billing_contact_email\" : null,\n         \"general_ledger_id\" : null,\n         \"vat_number\" : \"222\",\n         \"phone\" : null,\n         \"customs_code\" : null,\n         \"name\" : \"INTER OCTOPI\"\n      },\n      {\n         \"email\" : null,\n         \"billing_contact_email\" : null,\n         \"general_ledger_id\" : null,\n         \"vat_number\" : \"333\",\n         \"phone\" : null,\n         \"customs_code\" : null,\n         \"name\" : \"OCTOPI UNITED FC\",\n         \"address\" : null,\n         \"contact_person\" : null,\n         \"id\" : 337385\n      }\n   ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/consignees/show","name":"show","apis":[{"api_url":"/api/v1/consignees/:id","http_method":"GET","short_description":"Returns information about a consignee","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint will return the information for the consignee.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/consignees/5.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"consignee\" : {\n      \"phone\" : null,\n      \"name\" : \"FC OCTOPI\",\n      \"id\" : 337395,\n      \"vat_number\" : null,\n      \"general_ledger_id\" : null,\n      \"address\" : null,\n      \"contact_person\" : null,\n      \"customs_code\" : null,\n      \"email\" : null,\n      \"billing_contact_email\" : null\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/consignees/create","name":"create","apis":[{"api_url":"/api/v1/consignees","http_method":"POST","short_description":"Create a new consignee","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to create a new consignee.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/consignees.json\" -X POST -d '{ \"name\" : \"FC UNITED\", \"general_ledger_id\": \"SL1231\", \"contact_person\": \"Joe Jones\", \"address\": \"123 Main St\", \"email\": \"joe@example.com\", \"customs_code\": \"111\" , \"vat_number\": \"111\"}' -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"consignee\" : {\n      \"email\" : \"joe@example.com\",\n      \"billing_contact_email\" : \"accounting@example.com\",\n      \"id\" : 353388,\n      \"general_ledger_id\" : \"SL1231\",\n      \"vat_number\" : \"111\",\n      \"phone\" : null,\n      \"customs_code\" : \"111\",\n      \"address\" : \"123 Main St\",\n      \"contact_person\" : \"Joe Jones\",\n      \"name\" : \"FC UNITED\"\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/consignees/update","name":"update","apis":[{"api_url":"/api/v1/consignees/:id","http_method":"PUT","short_description":"Updates a consignee record","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to update a consignee.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/consignees/353388.json\" -X PUT -d '{ \"name\" : \"FC UNITED LLC\", \"customs_code\": \"222\", \"vat_number\": \"111\"}' -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"consignee\" : {\n      \"customs_code\" : \"222\",\n      \"contact_person\" : \"Joe Jones\",\n      \"phone\" : null,\n      \"general_ledger_id\" : \"SL1231\",\n      \"vat_number\" : \"111\",\n      \"name\" : \"FC UNITED LLC\",\n      \"address\" : \"123 Main St\",\n      \"email\" : \"joe@example.com\",\n      \"billing_contact_email\" : \"accounting@example.com\",\n      \"id\" : 353388\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/consignees/destroy","name":"destroy","apis":[{"api_url":"/api/v1/consignees/:id","http_method":"DELETE","short_description":"Delete a consignee record","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to delete a consignee.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/consignees/353388.json\" -X DELETE -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"consignee\" : {\n      \"contact_person\" : null,\n      \"phone\" : null,\n      \"email\" : null,\n      \"customs_code\" : null,\n      \"vat_number\" : null,\n      \"name\" : \"A+ TIRE\",\n      \"address\" : \"DELMAS 19, RUE PIERRE ANSELME\",\n      \"id\" : 300009,\n      \"general_ledger_id\" : null\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"container_types":{"doc_url":"/api/v1/documentation/1.0/container_types","id":"container_types","api_url":"/api/v1","name":"Container_types","short_description":"This resource allows you to fetch container types.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/container_types/index","name":"index","apis":[{"api_url":"/api/v1/container_types.json","http_method":"GET","short_description":"Returns a list of container types.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/container_types.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n","{\n  \"container_types\": [\n    {\n      \"id\": 123,\n      \"label\": \"40RF\",\n      \"description\": \"40ft Reefer\",\n      \"iso_type_code\": \"45R2\",\n      \"length_in_ft\": 40,\n      \"teu\": 2.0,\n      \"category\": \"Reefer\",\n      \"synonyms\": [\n          \"40RF\",\n          \"40RH\",\n          \"4330\",\n          \"4331\",\n          \"4332\",\n          \"4536\",\n          \"4230\",\n          \"42R0\",\n          \"42R1\",\n          \"42R9\",\n          \"42RE\",\n          \"42RS\",\n          \"42RT\"\n      ]\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"container_weights":{"doc_url":"/api/v1/documentation/1.0/container_weights","id":"container_weights","api_url":"/api/v1","name":"Container_weights","short_description":"This resource allows you to fetch container weights in Octopi.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/container_weights/index","name":"index","apis":[{"api_url":"/api/v1/container_weights.json","http_method":"GET","short_description":"Returns all the container weights present in Octopi.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"reported_during","full_name":"reported_during","description":"\n\u003cp\u003eThe movement type during which the container weight is created.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003estripping_only\u003c/code\u003e, \u003ccode\u003epartial_stripping_only\u003c/code\u003e, \u003ccode\u003efull_stripping_and_stuffing\u003c/code\u003e, \u003ccode\u003epartial_stripping_and_stuffing\u003c/code\u003e, \u003ccode\u003ecustoms_verification\u003c/code\u003e, \u003ccode\u003egate_in\u003c/code\u003e, \u003ccode\u003egate_out\u003c/code\u003e, \u003ccode\u003eloading\u003c/code\u003e, \u003ccode\u003eunloading\u003c/code\u003e, \u003ccode\u003einventory\u003c/code\u003e, \u003ccode\u003eother\u003c/code\u003e, \u003ccode\u003emanual_insert\u003c/code\u003e, \u003ccode\u003emanifest\u003c/code\u003e, \u003ccode\u003eovershipped\u003c/code\u003e, \u003ccode\u003estuffing_only\u003c/code\u003e, \u003ccode\u003evessel_convenience\u003c/code\u003e, \u003ccode\u003eship_to_ship_shifting\u003c/code\u003e, \u003ccode\u003eship_to_port_shifting\u003c/code\u003e, \u003ccode\u003eport_to_ship_shifting\u003c/code\u003e, \u003ccode\u003eoverlanded\u003c/code\u003e, \u003ccode\u003econtainer_weight\u003c/code\u003e, \u003ccode\u003econtainer_damage\u003c/code\u003e, \u003ccode\u003econtainer_repair\u003c/code\u003e, \u003ccode\u003emoved_by_octopi\u003c/code\u003e, \u003ccode\u003ebreakbulk_delivery\u003c/code\u003e, \u003ccode\u003evehicle_delivery\u003c/code\u003e, \u003ccode\u003eboat_delivery\u003c/code\u003e, \u003ccode\u003econtainer_cleaning\u003c/code\u003e, \u003ccode\u003ereefer_pre_trip\u003c/code\u003e, \u003ccode\u003edock_receipt\u003c/code\u003e, \u003ccode\u003eyard\u003c/code\u003e, \u003ccode\u003etransfer_out\u003c/code\u003e, \u003ccode\u003etransfer_in\u003c/code\u003e, \u003ccode\u003econtainer_scanning\u003c/code\u003e, \u003ccode\u003ereefer_plug_in\u003c/code\u003e, \u003ccode\u003ereefer_plug_out\u003c/code\u003e, \u003ccode\u003econtainer_stripping\u003c/code\u003e, \u003ccode\u003estock_transfer\u003c/code\u003e, \u003ccode\u003ebreakbulk_split\u003c/code\u003e, \u003ccode\u003ebreakbulk_merge\u003c/code\u003e, \u003ccode\u003econtainer_inspection\u003c/code\u003e, \u003ccode\u003econtainer_reseal\u003c/code\u003e, \u003ccode\u003esend_to_berth\u003c/code\u003e, \u003ccode\u003ereceive_from_berth\u003c/code\u003e, \u003ccode\u003econtainer_repair_start\u003c/code\u003e, \u003ccode\u003epartial_stuffing\u003c/code\u003e, \u003ccode\u003ebooking_updated\u003c/code\u003e, \u003ccode\u003estorage_invoice\u003c/code\u003e, \u003ccode\u003econtainer_edit\u003c/code\u003e, \u003ccode\u003erail_manifest\u003c/code\u003e, \u003ccode\u003erail_discharge\u003c/code\u003e, \u003ccode\u003erail_load\u003c/code\u003e, \u003ccode\u003eterminal_service\u003c/code\u003e, \u003ccode\u003emount\u003c/code\u003e, \u003ccode\u003edismount\u003c/code\u003e, \u003ccode\u003echassis_damage\u003c/code\u003e, \u003ccode\u003echassis_repair\u003c/code\u003e, \u003ccode\u003echassis_booking_updated\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"created_at","full_name":"created_at","description":"\n\u003cp\u003eThe date and time when the container weight is created, in ISO 8601 format (Eg. 2023-08-18T14:00:00Z) in UTC.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"arrival_voyage_id","full_name":"arrival_voyage_id","description":"\n\u003cp\u003econtainer or breakbulk\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_id","full_name":"container_id","description":"\n\u003cp\u003eOctopi ID of any container.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of container weights to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/container_weights' \\\n  -X 'GET' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n","{\n  \"total_count\": 3,\n  \"container_weights\": [\n    {\n      \"id\": 123,\n      \"user\": \"John Doe\",\n      \"container_id\": 5281925,\n      \"container_number\": \"TEST7607347\",\n      \"movement_id\": 24491960,\n      \"declared_weight_kg\": 40000,\n      \"verified_weight_kg\": 40000,\n      \"reported_during\": \"Container Weight\",\n      \"created_at\": \"2024-02-21T14:54:06.000-05:00\",\n      \"event_created_at\": \"2024-02-21T14:55:06.000-05:00\",\n      \"arrival_voyage_id\": 123552,\n      \"arrival_voyage_number\": \"101S\",\n      \"container_weight_receipt_url\": \"https://app.octopi.co/container_weights/123/print\"\n    },\n    {\n      \"id\": 189,\n      \"user\": \"John Doe\",\n      \"container_id\": 5281925,\n      \"container_number\": \"TEST7607347\",\n      \"movement_id\": 24491960,\n      \"declared_weight_kg\": 40000,\n      \"verified_weight_kg\": 40000,\n      \"reported_during\": \"Gate In\",\n      \"created_at\": \"2024-02-21T14:54:06.000-05:00\",\n      \"event_created_at\": \"2024-02-21T14:55:06.000-05:00\",\n      \"arrival_voyage_id\": 123552,\n      \"arrival_voyage_number\": \"101S\",\n      \"container_weight_receipt_url\": \"https://app.octopi.co/container_weights/189/print\"\n    },\n    {\n      \"id\": 108,\n      \"user\": \"John Doe\",\n      \"container_id\": 5281925,\n      \"container_number\": \"TEST7607347\",\n      \"movement_id\": 24491960,\n      \"declared_weight_kg\": 40000,\n      \"verified_weight_kg\": 40000,\n      \"reported_during\": \"Container Weight\",\n      \"created_at\": \"2024-02-21T14:54:06.000-05:00\",\n      \"event_created_at\": \"2024-02-21T14:55:06.000-05:00\",\n      \"arrival_voyage_id\": 123552,\n      \"arrival_voyage_number\": \"101S\",\n      \"container_weight_receipt_url\": \"https://app.octopi.co/container_weights/108/print\"\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/container_weights/show","name":"show","apis":[{"api_url":"/api/v1/container_weights/:id.json","http_method":"GET","short_description":"Returns information about the container weight.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"id","full_name":"id","description":"\n\u003cp\u003eOctopi ID of container weight.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/container_weights/ID.json' \\\n  -X 'GET' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n","{\n  \"id\": 123,\n  \"user\": \"John Doe\",\n  \"container_id\": 5281925,\n  \"container_number\": \"TEST7607347\",\n  \"movement_id\": 24491960,\n  \"declared_weight_kg\": 40000,\n  \"verified_weight_kg\": 40000,\n  \"reported_during\": \"Container Weight\",\n  \"created_at\": \"2024-02-21T14:54:06.000-05:00\",\n  \"event_created_at\": \"2024-02-21T14:55:06.000-05:00\",\n  \"arrival_voyage_id\": 123552,\n  \"arrival_voyage_number\": \"101S\",\n  \"container_weight_receipt_url\": \"https://app.octopi.co/container_weights/123/print\"\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"containers":{"doc_url":"/api/v1/documentation/1.0/containers","id":"containers","api_url":"/api/v1","name":"Containers","short_description":"This resource allows you to interact with containers in Octopi.","full_description":"\n\u003cp\u003eIn Octopi, a container object can represent a container, but sometimes can also represent non-containerized cargo such as break-bulk cargo, cars, boats, etc.\u003c/p\u003e\n\n\u003cp\u003eWhen a container object has a number, it is a container. When the number is left blank, it represents another type of cargo such as vehicle, breakbulk, boat, etc.\u003c/p\u003e\n\n\u003cp\u003eContainers have many movements. A movement can be a Gate In, Gate Out, Full Stripping, Container Damage, Unloading, etc.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/containers/index","name":"index","apis":[{"api_url":"/api/v1/containers.json","http_method":"GET","short_description":"Returns information about containers.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Not Found: one of the requested resources wasn't found.","metadata":null},{"code":422,"description":"Unprocessable Entity: unable to process request due to an input or validation error.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"container_type_id","full_name":"container_type_id","description":"\n\u003cp\u003eFilter for a specific container type. Can be the Octopi container type id or container type label.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_line_id","full_name":"shipping_line_id","description":"\n\u003cp\u003eFilter for a specific shipping line. Can be the Octopi shipping line id or shipping line name.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"current_location_type","full_name":"current_location_type","description":"\n\u003cp\u003eFilter for a specific current location type.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"current_location_id","full_name":"current_location_id","description":"\n\u003cp\u003eFilter for a specific current location id.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"usage","full_name":"usage","description":"\n\u003cp\u003eFilter for a specific usage.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"booking_id","full_name":"booking_id","description":"\n\u003cp\u003eFilter for a specific booking. Can be the Octopi booking id or booking number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"bill_of_lading_id","full_name":"bill_of_lading_id","description":"\n\u003cp\u003eFilter for a specific bill of lading. Can be the Octopi bill of lading id or bill of lading number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"status","full_name":"status","description":"\n\u003cp\u003eFilter for container status (‘full’ or ‘empty’)\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"tags","full_name":"tags","description":"\n\u003cp\u003eFilter for a list of pipe-separated tags (eg. ‘tag1|tag2|tag3’)\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"arrival_voyage_id","full_name":"arrival_voyage_id","description":"\n\u003cp\u003eFilter for a specific arrival voyage. Can be the Octopi voyage id or voyage number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"departure_voyage_id","full_name":"departure_voyage_id","description":"\n\u003cp\u003eFilter for a specific departure voyage.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"yard_area_id","full_name":"yard_area_id","description":"\n\u003cp\u003eFilter for a specific yard area.Can be the Octopi yard area id or name.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/containers.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n","{\n  \"containers\": [\n    \"container\": {\n      \"id\": \"123456\",\n      \"number\": \"BMOU4286229\",\n      \"bill_of_lading\": \"PEV1231231\",\n      \"status\": \"full\",\n      \"size\": \"20\",\n      \"container_type\": {\n        \"label\": \"20RF\",\n        \"description\": \"This is a 20 ft. container\",\n        \"iso_type_code\": \"22RF\"\n      },\n      \"is_high_cube\": false,\n      \"is_reefer\": true,\n      \"seals\": [\n        \"G3117839\",\n        \"DGAEXP\"\n      ],\n      \"return_temperature\": 10,\n      \"supply_temperature\": 10,\n      \"set_point_temperature\": 10,\n      \"temperature_unit\": \"F\",\n      \"arrival_voyage\": {\n        \"number\": \"2345\",\n        \"vessel\": {\n          \"name\": \"Vega Luna\",\n          \"estimated_time_of_anchorage\": \"2017-04-07T02:00:00.000Z\"\n        }\n      },\n      \"commodity_type\": {\n        \"name\": \"Fish\"\n      },\n      \"departure_voyage\": {\n        \"number\": \"2345\",\n        \"vessel\": {\n          \"name\": \"Vega Luna\",\n          \"estimated_time_of_anchorage\": \"2017-05-07T02:00:00.000Z\"\n        }\n      },\n      \"weight\": 100.0,\n      \"container_vgm\": {\n        \"weight\": 100.0,\n        \"created_at\": \"2017-04-07T02:00:00.000Z\",\n        \"user\": {\n          \"name\": \"John D.\"\n        }\n      },\n      \"usage\": \"import\",\n      \"shipping_line\": {\n        \"code\": \"MASL\",\n        \"name\": \"Ma Shipping Line\",\n        \"carrier_type\": \"Ocean\",\n        \"agent\": {\n          \"name\": \"John Doe\"\n        }\n      },\n      \"consignees\": [\n        {\n          \"name\": \"SODIPAL SA\"\n        }\n      ],\n      \"meets_iso_standards\": true,\n      \"goods\": \"TOILET TISSUEHS CODE  481810\",\n      \"current_location_type\": \"Terminal\",\n      \"current_location\": \"Terminal: South Terminal\",\n      \"yard_area\": {\n          \"id\": 2,\n          \"name\": \"GRID 3328\",\n          \"description\": \"\",\n          \"terminal_id\": 1,\n          \"area_type\": \"grid\"\n      },\n      \"yard_slot\": {\n          \"id\": 6,\n          \"name\": \"GRID 3328\",\n          \"description\": \"\",\n          \"terminal_id\": 1,\n          \"area_type\": \"grid\",\n          \"custom_name\": \"GD1A2\"\n      },\n      \"iso_standards_errors\": \"\",\n      \"hazmat_codes\": [\n        {\n          \"code\": \"12XV\",\n          \"description\": \"hazmat\",\n          \"name\": \"Hextol\",\n          \"hazmat_class\": {\n            \"name\": \"Explosives\",\n            \"description\": \"Explosives that have a projection hazard but not a mass explosion hazard.\",\n            \"class_number\": 1,\n            \"division_number\": 2\n          }\n        }\n      ],\n      \"over_height\": false,\n      \"over_length\": false,\n      \"over_width\": false,\n      \"is_out_of_gauge\": false,\n      \"actions\": {\n        \"show\": {\n          \"url\": \"https://app.octopi.co/api/v1/containers/BMOU4286229.json\",\n          \"method\": \"GET\"\n        },\n        \"flex_fields\": [\n          {\n            \"label\": \"Name\",\n            \"value\": \"Octopi\"\n          }\n        ]\n      }\n    }\n  ],\n  \"actions\": {\n    \"index\": {\n      \"method\": \"GET\",\n      \"url\": \"https://app.octopi.co/api/v1/containers.json\"\n    },\n    \"next\": {\n      \"method\": \"GET\",\n      \"url\": \"https://app.octopi.co/api/v1/containers.json?page=2\"\n    },\n    \"previous\": {\n      \"method\": \"GET\",\n      \"url\": \"https://app.octopi.co/api/v1/containers.json?page=0\"\n    },\n    \"last\": {\n      \"method\": \"GET\",\n      \"url\": \"https://app.octopi.co/api/v1/containers.json?page=304\"\n    }\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/containers/show","name":"show","apis":[{"api_url":"/api/v1/containers/:number.json","http_method":"GET","short_description":"Returns information about the container.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Not Found: one of the requested resources wasn't found.","metadata":null},{"code":422,"description":"Unprocessable Entity: unable to process request due to an input or validation error.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"number","full_name":"number","description":"\n\u003cp\u003eThe container number to locate.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["Returns information about the container with the matching NUMBER.\n","curl \"https://app.octopi.co/api/v1/containers/CONTAINER_NUMBER.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n","{\n  \"container\": {\n    \"id\": \"123456\",\n    \"number\": \"BMOU4286229\",\n    \"bill_of_ladings\": [\"PEV1231231\"],  // Returns a list of active bill of ladings.\n    \"booking\": \"BOOK123\", // Returns the active booking.\n    \"status\": \"full\",\n    \"size\": \"20\",\n    \"container_type\": {\n      \"label\": \"20RF\",\n      \"description\": \"This is a 20 ft. container\",\n      \"iso_type_code\": \"22RF\"\n    },\n    \"is_high_cube\": false,\n    \"is_reefer\": true,\n    \"seals\": [\n      \"G3117839\",\n      \"DGAEXP\"\n    ],\n    \"return_temperature\": 10,\n    \"supply_temperature\": 10,\n    \"set_point_temperature\": 10,\n    \"temperature_unit\": \"F\",\n    \"arrival_voyage\": {\n      \"number\": \"2345\",\n      \"vessel\": {\n        \"name\": \"Vega Luna\",\n        \"estimated_time_of_anchorage\": \"2017-04-07T02:00:00.000Z\"\n      }\n    },\n    \"commodity_type\": {\n      \"name\": \"Fish\"\n    },\n    \"departure_voyage\": {\n      \"number\": \"2345\",\n      \"vessel\": {\n        \"name\": \"Vega Luna\",\n        \"estimated_time_of_anchorage\": \"2017-05-07T02:00:00.000Z\"\n      }\n    },\n    \"weight\": 100.0,\n    \"container_vgm\": {\n      \"weight\": 100.0,\n      \"created_at\": \"2017-04-07T02:00:00.000Z\",\n      \"user\": {\n        \"name\": \"John D.\"\n      }\n    },\n    \"usage\": \"import\",\n    \"shipping_line\": {\n      \"code\": \"MASL\",\n      \"name\": \"Ma Shipping Line\",\n      \"carrier_type\": \"Ocean\",\n      \"agent\": {\n        \"name\": \"John Doe\"\n      }\n    },\n    \"consignees\": [\n      {\n        \"name\": \"SODIPAL SA\"\n      }\n    ],\n    \"meets_iso_standards\": true,\n    \"goods\": \"TOILET TISSUEHS CODE  481810\",\n    \"current_location_type\": \"Terminal\",\n    \"current_location\": \"Terminal: South Terminal\",\n    \"yard_area\": {\n        \"id\": 2,\n        \"name\": \"GRID 3328\",\n        \"description\": \"\",\n        \"terminal_id\": 1,\n        \"area_type\": \"grid\"\n    },\n    \"yard_slot\": {\n        \"id\": 6,\n        \"name\": \"GRID 3328\",\n        \"description\": \"\",\n        \"terminal_id\": 1,\n        \"area_type\": \"grid\",\n        \"custom_name\": \"GD1A2\"\n    },\n    \"iso_standards_errors\": \"\",\n    \"hazmat_codes\": [\n      {\n        \"code\": \"12XV\",\n        \"description\": \"hazmat\",\n        \"name\": \"Hextol\",\n        \"hazmat_class\": {\n          \"name\": \"Explosives\",\n          \"description\": \"Explosives that have a projection hazard but not a mass explosion hazard.\",\n          \"class_number\": 1,\n          \"division_number\": 2\n        }\n      }\n    ],\n    \"over_height\": false,\n    \"over_length\": false,\n    \"over_width\": false,\n    \"is_out_of_gauge\": false,\n    \"actions\": {\n      \"show\": {\n        \"url\": \"https://app.octopi.co/api/v1/containers/BMOU4286229.json\",\n        \"method\": \"GET\"\n      },\n      \"flex_fields\": [\n        {\n          \"label\": \"Name\",\n          \"value\": \"Octopi\"\n        }\n      ]\n    }\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/containers/create","name":"create","apis":[{"api_url":"/api/v1/containers","http_method":"POST","short_description":"Creates a container not currently at the terminal","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Not Found: one of the requested resources wasn't found.","metadata":null},{"code":422,"description":"Unprocessable Entity: unable to process request due to an input or validation error.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"container","full_name":"container","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"consignee_ids","full_name":"container[consignee_ids]","description":"\n\u003cp\u003ean array of consignee ids for this container. Available consignee ids can be retrieved through /api/v1/consignees\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":true,"validator":"Must be an array of Integer","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_type_id","full_name":"container[container_type_id]","description":"\n\u003cp\u003ean id of ISO container type. Available container types can be retrieved through /api/v1/container_types\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"current_location_id","full_name":"container[current_location_id]","description":"\n\u003cp\u003ethe container current location id.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"current_location_type","full_name":"container[current_location_type]","description":"\n\u003cp\u003ethe type of current location\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eContainer\u003c/code\u003e, \u003ccode\u003eBerthArea\u003c/code\u003e, \u003ccode\u003eOther\u003c/code\u003e, \u003ccode\u003eYardArea\u003c/code\u003e, \u003ccode\u003eYardSlot\u003c/code\u003e, \u003ccode\u003eTerminal\u003c/code\u003e, \u003ccode\u003eGate\u003c/code\u003e, \u003ccode\u003eVoyage\u003c/code\u003e, \u003ccode\u003eShip\u003c/code\u003e, \u003ccode\u003eConsignee\u003c/code\u003e, \u003ccode\u003ePort\u003c/code\u003e, \u003ccode\u003eTrainVisit\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"number","full_name":"container[number]","description":"\n\u003cp\u003ethe container number\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_line_id","full_name":"container[shipping_line_id]","description":"\n\u003cp\u003ethe shipping line id of the container\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"cargo_type","full_name":"container[cargo_type]","description":"\n\u003cp\u003eThe cargo type of the container\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003econtainer\u003c/code\u003e, \u003ccode\u003evehicle\u003c/code\u003e, \u003ccode\u003ebreakbulk\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"usage","full_name":"container[usage]","description":"\n\u003cp\u003eType usage of the container\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eunknown\u003c/code\u003e, \u003ccode\u003eexport\u003c/code\u003e, \u003ccode\u003eimport\u003c/code\u003e, \u003ccode\u003etransshipment_load\u003c/code\u003e, \u003ccode\u003erestow\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"status","full_name":"container[status]","description":"\n\u003cp\u003ethe current status of the container\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003efull\u003c/code\u003e, \u003ccode\u003eempty\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"pin","full_name":"container[pin]","description":"\n\u003cp\u003eContainer release PIN. If the shipping line is configured to verify this specific PIN, a truck’s entry (Gate In) and interchange departure (Interchange Out) will only be permitted if the value provided in the request matches this one.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"hazmat_codes","full_name":"container[hazmat_codes]","description":"\n\u003cp\u003ehazmat codes on a container using this list of codes.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":true,"validator":"Must be an array of String","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"operating_reefer","full_name":"container[operating_reefer]","description":"\n\u003cp\u003eindicate if the reefer is in operational status or not (OR or NOR). Note that set_point_temperature cannot be changed on non operational refer and an error will be return in that case.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e, \u003ccode\u003e1\u003c/code\u003e, \u003ccode\u003e0\u003c/code\u003e.","expected_type":"boolean","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"return_temperature","full_name":"container[return_temperature]","description":"\n\u003cp\u003ethe current temperature measured by the sensor at the air return of the reefer.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a decimal number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"supply_temperature","full_name":"container[supply_temperature]","description":"\n\u003cp\u003ethe current temperature inside of the reefer measured by the sensor placed close to the source of cool air.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a decimal number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"set_point_temperature","full_name":"container[set_point_temperature]","description":"\n\u003cp\u003ethe desired temperature that the reefer operator sets for the system to maintain.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a decimal number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"temperature_unit","full_name":"container[temperature_unit]","description":"\n\u003cp\u003eThe measurement unit for any of temperature params. Accepted values are C, F, celsius, fahrenheit. This params is required if any of temperature params are given.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eC\u003c/code\u003e, \u003ccode\u003ecelsius\u003c/code\u003e, \u003ccode\u003eF\u003c/code\u003e, \u003ccode\u003efahrenheit\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"reefer_humidity","full_name":"container[reefer_humidity]","description":"\n\u003cp\u003ethe % of humidity inside of the reefer setting.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a decimal number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"reefer_ventilation","full_name":"container[reefer_ventilation]","description":"\n\u003cp\u003ethe % of opening the Fresh Air Makeup Vent. The % is used as a setting on that Vent.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a decimal number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"seals","full_name":"container[seals]","description":"\n\u003cp\u003eSeals on a container using this list of seals. A maximum of 4 seals are accepted.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":true,"validator":"Must be an array of String","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"over_height","full_name":"container[over_height]","description":"\n\u003cp\u003eindicate if the container is over height.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e, \u003ccode\u003e1\u003c/code\u003e, \u003ccode\u003e0\u003c/code\u003e.","expected_type":"boolean","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"over_length","full_name":"container[over_length]","description":"\n\u003cp\u003eindicate if the container is over length.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e, \u003ccode\u003e1\u003c/code\u003e, \u003ccode\u003e0\u003c/code\u003e.","expected_type":"boolean","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"over_width","full_name":"container[over_width]","description":"\n\u003cp\u003eindicate if the container is over width.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e, \u003ccode\u003e1\u003c/code\u003e, \u003ccode\u003e0\u003c/code\u003e.","expected_type":"boolean","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"flex_fields","full_name":"container[flex_fields]","description":"\n\u003cp\u003eAn array of hashes, where each hash contains a flex field’s canonical name and the corresponding value to be set on the container.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of Hash","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/containers.json\" \\\n  -X POST \\\n  -H \"Accept: application/json\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Token token=YOUR TOKEN HERE\" \\\n  -d '{ \\\n    \"container\": {\n      \"container_type_id\": 256,\n      \"current_location_id\": 35,\n      \"current_location_type\": \"Terminal\",\n      \"number\": \"BHCU4942000\",\n      \"shipping_line_id\": 78,\n      \"usage\": \"unknown\",\n      \"status\": \"full\",\n      \"cargo_type\": \"container\",\n      \"pin\": \"999999\",\n      \"flex_fields\": [\n        { \"container_flex_field_1\": \"ABC123\" },\n        { \"container_flex_field_2\": \"XYZ456\" }\n      ]\n    }\n  }'\n","{\n  \"container\": {\n    \"meets_iso_standards\": true,\n    \"id\": 2262336,\n    \"number\": \"BHCU4942000\",\n    \"container_type\": {\n      \"code\": \"40CT\",\n      \"description\": \"\",\n      \"iso_type_code\": \"42G1\"\n    },\n    \"size\": 40,\n    \"is_high_cube\": false,\n    \"is_reefer\": false,\n    \"seals\": [],\n    \"return_temperature\": null,\n    \"supply_temperature\": null,\n    \"set_point_temperature\": null,\n    \"temperature_unit\": \"F\",\n    \"arrival_voyage\": {\n      \"number\": null,\n      \"estimated_time_of_anchorage\": null,\n      \"vessel\": {\n        \"name\": null\n      }\n    },\n    \"commodity_type\": {\n      \"name\": null\n    },\n    \"departure_voyage\": {\n      \"number\": null,\n      \"estimated_time_of_departure\": null,\n      \"vessel\": {\n        \"name\": null\n      }\n    },\n    \"shipping_line\": {\n      \"code\": \"MSK\",\n      \"name\": \"MAERSK LINE\",\n      \"synonyms\": [],\n      \"carrier_type\": \"ocean\",\n      \"agent\": {\n        \"name\": null\n      }\n    },\n    \"weight\": 0.0,\n    \"container_vgm\": {\n      \"weight\": null,\n      \"created_at\": null,\n      \"user\": {\n        \"name\": null\n      }\n    },\n    \"iso_standards_errors\": null,\n    \"current_location_type\": \"Terminal\",\n    \"current_location\": \"Terminal: North Terminal\",\n    \"status\": \"full\",\n    \"usage\": \"unknown\",\n    \"goods\": null,\n    \"consignees\": [],\n    \"hazmat_codes\": [],\n    \"flex_fields\": [\n      {\n        \"label\": \"Flex Field 1\",\n        \"value\": \"ABC123\"\n      },\n      {\n        \"label\": \"Flex Field 2\",\n        \"value\": \"XYZ456\"\n      }\n    ],\n    \"extra_attributes\": null,\n    \"tags\": [],\n    \"over_height\": false,\n    \"over_length\": false,\n    \"over_width\": false,\n    \"is_out_of_gauge\": false,\n    \"actions\": {\n      \"show\": {\n        \"method\": \"GET\",\n        \"url\": \"https://app.octopi.co/api/v1/containers/BHCU4942000.json\"\n      },\n      \"update\": {\n        \"method\": \"PATCH\",\n        \"url\": \"https://app.octopi.co/api/v1/containers/BHCU4942000.json\"\n      },\n      \"movements\": {\n        \"method\": \"GET\",\n        \"url\": \"https://app.octopi.co/api/v1/containers/BHCU4942000/movements.json\"\n      }\n    }\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/containers/update","name":"update","apis":[{"api_url":"/api/v1/containers/:number.json","http_method":"PATCH","short_description":"Updates the container's attributes.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Not Found: one of the requested resources wasn't found.","metadata":null},{"code":422,"description":"Unprocessable Entity: unable to process request due to an input or validation error.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"number","full_name":"number","description":"\n\u003cp\u003eThe number of the container to update\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container","full_name":"container","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"consignee_ids","full_name":"container[consignee_ids]","description":"\n\u003cp\u003ean array of consignee ids for this container. Available consignee ids can be retrieved through /api/v1/consignees\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":true,"validator":"Must be an array of Integer","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_type_id","full_name":"container[container_type_id]","description":"\n\u003cp\u003ean id of ISO container type. Available container types can be retrieved through /api/v1/container_types\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"current_location_id","full_name":"container[current_location_id]","description":"\n\u003cp\u003ethe container current location id.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"current_location_type","full_name":"container[current_location_type]","description":"\n\u003cp\u003ethe type of current location\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eTerminal\u003c/code\u003e, \u003ccode\u003eYardArea\u003c/code\u003e, \u003ccode\u003eYardSlot\u003c/code\u003e, \u003ccode\u003ePort\u003c/code\u003e, \u003ccode\u003eBerthArea\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"hazmat_codes","full_name":"container[hazmat_codes]","description":"\n\u003cp\u003eReplace the existing hazmat codes on a container using this list of codes. Passing an empty array removes any hazmat codes from the container.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":true,"validator":"Must be an array of String","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"operating_reefer","full_name":"container[operating_reefer]","description":"\n\u003cp\u003eindicate if the reefer is in operational status or not (OR or NOR). Note that set_point_temperature cannot be changed on non operational refer and an error will be return in that case.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e, \u003ccode\u003e1\u003c/code\u003e, \u003ccode\u003e0\u003c/code\u003e.","expected_type":"boolean","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"return_temperature","full_name":"container[return_temperature]","description":"\n\u003cp\u003ethe current temperature measured by the sensor at the air return of the reefer.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a decimal number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"supply_temperature","full_name":"container[supply_temperature]","description":"\n\u003cp\u003ethe current temperature inside of the reefer measured by the sensor placed close to the source of cool air.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a decimal number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"set_point_temperature","full_name":"container[set_point_temperature]","description":"\n\u003cp\u003ethe desired temperature that the reefer operator sets for the system to maintain.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a decimal number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"temperature_unit","full_name":"container[temperature_unit]","description":"\n\u003cp\u003ethe measurement unit for any of temperature params. Accepted values are C, F, celsius, fahrenheit. This params is required if any of temperature params are given.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eC\u003c/code\u003e, \u003ccode\u003ecelsius\u003c/code\u003e, \u003ccode\u003eF\u003c/code\u003e, \u003ccode\u003efahrenheit\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"reefer_humidity","full_name":"container[reefer_humidity]","description":"\n\u003cp\u003ethe % of humidity inside of the reefer setting.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a decimal number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"reefer_ventilation","full_name":"container[reefer_ventilation]","description":"\n\u003cp\u003ethe % of opening the Fresh Air Makeup Vent. The % is used as a setting on that Vent.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a decimal number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"seals","full_name":"container[seals]","description":"\n\u003cp\u003eReplace the existing seals on a container using this list of seals. A maximum of 4 seals are accepted. Passing an empty array removes any seals from the container.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":true,"validator":"Must be an array of String","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"status","full_name":"container[status]","description":"\n\u003cp\u003ethe current status of the container\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003efull\u003c/code\u003e, \u003ccode\u003eempty\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"over_height","full_name":"container[over_height]","description":"\n\u003cp\u003eindicate if the container is over height.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e, \u003ccode\u003e1\u003c/code\u003e, \u003ccode\u003e0\u003c/code\u003e.","expected_type":"boolean","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"over_length","full_name":"container[over_length]","description":"\n\u003cp\u003eindicate if the container is over length.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e, \u003ccode\u003e1\u003c/code\u003e, \u003ccode\u003e0\u003c/code\u003e.","expected_type":"boolean","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"over_width","full_name":"container[over_width]","description":"\n\u003cp\u003eindicate if the container is over width.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e, \u003ccode\u003e1\u003c/code\u003e, \u003ccode\u003e0\u003c/code\u003e.","expected_type":"boolean","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"flex_fields","full_name":"container[flex_fields]","description":"\n\u003cp\u003eAn array of hashes, where each hash contains a flex field’s canonical name and the corresponding value to be set on the container.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of Hash","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl --location --request PATCH 'https://app.octopi.co/api/v1/containers/NUMBER' \\\n--header 'Accept: application/json' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Token token=TOKEN' \\\n--data-raw '{\n    \"container\": {\n        \"hazmat_codes\": [\"3536\"],\n        \"current_location_id\": 35,\n        \"current_location_type\": \"Terminal\",\n        \"flex_fields\": [\n          { \"container_flex_field_1\": \"ABC123\" },\n          { \"container_flex_field_2\": \"XYZ456\" }\n        ]\n    }\n}'\n","{\n  \"container\": {\n    \"container_type_id\": 784,\n    \"hazmat_codes\": [\"3536\"],\n    \"operating_reefer\": true,\n    \"reefer_humidity\": 50.5,\n    \"reefer_ventilation\": 100,\n    \"return_temperature\": 12.0,\n    \"seals\": [\"AN22283\"],\n    \"set_point_temperature\": 10.0,\n    \"status\": \"full\",\n    \"supply_temperature\": 11.0,\n    \"temperature_unit\": \"C\",\n    \"flex_fields\": [\n      {\n        \"label\": \"Flex Field 1\",\n        \"value\": \"ABC123\"\n      },\n      {\n        \"label\": \"Flex Field 2\",\n        \"value\": \"XYZ456\"\n      }\n    ]\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"freight_forwarders":{"doc_url":"/api/v1/documentation/1.0/freight_forwarders","id":"freight_forwarders","api_url":"/api/v1","name":"Freight_forwarders","short_description":"This resources allows you to create, read, update, or delete freight forwarders in Octopi.","full_description":"\n\u003cp\u003eUse this API resource to CRUD freight forwarders.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/freight_forwarders/index","name":"index","apis":[{"api_url":"/api/v1/freight_forwarders.json","http_method":"GET","short_description":"Returns the list of freight forwarders","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint will allow you to get a list of freight forwarders. You can filter by using different query parameters such as name or general_ledger_id.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"name","full_name":"name","description":"\n\u003cp\u003eAllows you to filter/search freight forwarders by name\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"general_ledger_id","full_name":"general_ledger_id","description":"\n\u003cp\u003eAllows you to filter/search freight forwarders by general ledger ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"missing_general_ledger_id","full_name":"missing_general_ledger_id","description":"\n\u003cp\u003eSet to true to return all freight forwarders that do not have a general ledger ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"active","full_name":"active","description":"\n\u003cp\u003eFilter for active freight forwarders by setting to true. Or set to false to get all inactive freight forwarders. If absent, Octopi will return both active and inactive freight forwarders.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/freight_forwarders.json?name=Octopi\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"freight_forwarders\" : [\n      {\n         \"phone\" : null,\n         \"name\" : \"FC OCTOPI\",\n         \"general_ledger_id\" : null,\n         \"vat_number\" : \"222\",\n         \"email\" : null,\n         \"id\" : 337395,\n         \"address\" : null,\n         \"contact_person\" : null\n      },\n      {\n         \"address\" : null,\n         \"contact_person\" : null,\n         \"id\" : 337386,\n         \"email\" : null,\n         \"general_ledger_id\" : null,\n         \"vat_number\" : \"2232\",\n         \"phone\" : null,\n         \"name\" : \"INTER OCTOPI\"\n      },\n      {\n         \"email\" : null,\n         \"general_ledger_id\" : null,\n         \"vat_number\" : \"2212\",\n         \"phone\" : null,\n         \"name\" : \"OCTOPI UNITED FC\",\n         \"address\" : null,\n         \"contact_person\" : null,\n         \"id\" : 337385\n      }\n   ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/freight_forwarders/show","name":"show","apis":[{"api_url":"/api/v1/freight_forwarders/:id","http_method":"GET","short_description":"Returns information about a freight forwarder","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint will return the information for the freight forwarder.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/freight_forwarders/5.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"freight_forwarder\" : {\n      \"phone\" : null,\n      \"name\" : \"FC OCTOPI\",\n      \"id\" : 337395,\n      \"vat_number\" : null,\n      \"general_ledger_id\" : null,\n      \"address\" : null,\n      \"contact_person\" : null,\n      \"email\" : null\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/freight_forwarders/create","name":"create","apis":[{"api_url":"/api/v1/freight_forwarders","http_method":"POST","short_description":"Create a new freight forwarder","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to create a new freight forwarder.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/freight_forwarders.json\" -X POST -d '{ \"name\" : \"FC UNITED\", \"general_ledger_id\": \"SL1231\", \"contact_person\": \"Joe Jones\", \"address\": \"123 Main St\", \"email\": \"joe@example.com\", \"vat_number\": \"222\" }' -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"freight_forwarder\" : {\n      \"email\" : \"joe@example.com\",\n      \"id\" : 353388,\n      \"general_ledger_id\" : \"SL1231\",\n      \"phone\" : \"786-111-1111\",\n      \"vat_number\": \"222\",\n      \"address\" : \"123 Main St\",\n      \"contact_person\" : \"Joe Jones\",\n      \"name\" : \"FC UNITED\"\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/freight_forwarders/update","name":"update","apis":[{"api_url":"/api/v1/freight_forwarders/:id","http_method":"PUT","short_description":"Updates a freight forwarder record","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to update a freight forwarder.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/freight_forwarders/353388.json\" -X PUT -d '{ \"name\" : \"FC UNITED LLC\", \"vat_number\" : \"333\" }' -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"freight_forwarder\" : {\n      \"contact_person\" : \"Joe Jones\",\n      \"phone\" : null,\n      \"general_ledger_id\" : \"SL1231\",\n      \"name\" : \"FC UNITED LLC\",\n      \"vat_number\" : \"333\",\n      \"address\" : \"123 Main St\",\n      \"email\" : \"joe@example.com\",\n      \"id\" : 353388\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/freight_forwarders/destroy","name":"destroy","apis":[{"api_url":"/api/v1/freight_forwarders/:id","http_method":"DELETE","short_description":"Soft deletes a freight forwarder record","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to delete a freight forwarder. This is a soft delete. It will mark the company as inactive.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/freight_forwarders/353388.json\" -X DELETE -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"freight_forwarder\" : {\n      \"contact_person\" : null,\n      \"phone\" : null,\n      \"email\" : null,\n      \"name\" : \"A+ TIRE\",\n      \"vat_number\" : null,\n      \"address\" : \"DELMAS 19, RUE PIERRE ANSELME\",\n      \"id\" : 300009,\n      \"general_ledger_id\" : null\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"general_cargoes":{"doc_url":"/api/v1/documentation/1.0/general_cargoes","id":"general_cargoes","api_url":"/api/v1","name":"General_cargoes","short_description":"This resource allows you to fetch data about general cargo.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/general_cargoes/index","name":"index","apis":[{"api_url":"/api/v1/general_cargoes.json","http_method":"GET","short_description":"Gets a list of general cargo","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to fetch information about general cargo.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":400,"description":"Bad request.","metadata":null},{"code":422,"description":"Unprocessable entity.","metadata":null},{"code":500,"description":"Internal server error.","metadata":null}],"params":[{"name":"arrival_voyage_id","full_name":"arrival_voyage_id","description":"\n\u003cp\u003eFilter for a specific arrival voyage. Can be the Octopi voyage id or voyage number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"booking_id","full_name":"booking_id","description":"\n\u003cp\u003eFilter for a specific booking. Can be the Octopi booking id or booking number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"commodity_type","full_name":"commodity_type","description":"\n\u003cp\u003eFilter for a specific commodity type.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"consignee_id","full_name":"consignee_id","description":"\n\u003cp\u003eFilter for a specific consignee. Can be the Octopi consignee id or consignee name.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"current_location_type","full_name":"current_location_type","description":"\n\u003cp\u003eFilter for a specific current location type.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"departure_voyage_id","full_name":"departure_voyage_id","description":"\n\u003cp\u003eFilter for a specific departure voyage.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"dock_receipt_id","full_name":"dock_receipt_id","description":"\n\u003cp\u003eFilter for a specific dock receipt. Can be the Octopi dock receipt id or dock receipt number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"reference_number","full_name":"reference_number","description":"\n\u003cp\u003eFilter for a specific reference number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"stripped_from_container_id","full_name":"stripped_from_container_id","description":"\n\u003cp\u003eFilter by the container the cargo was stripped from. Can be the Octopi container id or container number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"tags","full_name":"tags","description":"\n\u003cp\u003eFilter for a list of pipe-separated tags (eg. ‘tag1|tag2|tag3’)\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"usage","full_name":"usage","description":"\n\u003cp\u003eFilter for a specific usage.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/general_cargoes.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR_TOKEN\" -d '{ \"consignee_id\": \"ABC DIRECT\" }'\n","{\n  \"general_cargoes\" : [\n    {\n      \"id\": 12345,\n      \"quantity\": 50.0,\n      \"goods_description\": \"1.0 kilogram of wood\",\n      \"arrival_voyage\": \"\",\n      \"commodity_type\": null,\n      \"consignees\": [\n        'ABC DIRECT'\n      ],\n      \"current_location_type\": \"Voyage\",\n      \"current_location\": \"Voyage: PLANET EARTH\",\n      \"dock_receipt\": null,\n      \"reference_number\": null,\n      \"tags\": [\n        'quality wood'\n      ],\n      \"usage\": \"unknown\",\n      \"volume\": \"8,000.00\"\n    },\n    \"flex_fileds\": [{\n      \"label\": \"Name\",\n      \"value\": \"Octopi\"\n    }]\n  ],\n  \"actions\": {\n    \"index\": {\n      \"method\": \"GET\",\n      \"url\": \"https://app.octopi.co/api/v1/general_cargoes.json\"\n    },\n    \"next\": {\n      \"method\": \"GET\",\n      \"url\": \"https://app.octopi.co/api/v1/general_cargoes.json?page=2\"\n    },\n    \"previous\": {\n      \"method\": \"GET\",\n      \"url\": \"https://app.octopi.co/api/v1/general_cargoes.json?page=0\"\n    },\n    \"last\": {\n      \"method\": \"GET\",\n      \"url\": \"https://app.octopi.co/api/v1/general_cargoes.json?page=304\"\n    }\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/general_cargoes/show","name":"show","apis":[{"api_url":"/api/v1/general_cargoes/:id.json","http_method":"GET","short_description":"Returns information about a specific general cargo","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to fetch information about a specific general cargo.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":400,"description":"Bad request.","metadata":null},{"code":422,"description":"Unprocessable entity.","metadata":null},{"code":500,"description":"Internal server error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"\n\u003cp\u003eThe Octopi general cargo ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/general_cargoes/:id.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR_TOKEN\"'\n","{\n  \"general_cargo\": {\n    \"id\": 123,\n    \"reference_number\": \"\",\n    \"quantity\": 1.0,\n    \"goods\": \"Bundle of wood\",\n    \"goods_description\": \"1.0 Bundle of wood\",\n    \"shipping_marks\": null,\n    \"usage\": \"export\",\n    \"active_bill_of_ladings\": \"BOL1092719\",\n    \"consignee\": \"Consignee: COOL DUDE\",\n    \"current_location_type\": \"Terminal\",\n    \"current_location\": \"Terminal: Sunny Beaches\",\n    \"weight_unit\": \"lb\",\n    \"weight\": 2.0,\n    \"dimension_unit\": \"inches\",\n    \"width\": 48.0,\n    \"height\": 13.0,\n    \"length\": 168.0,\n    \"volume\": \"104,832.00\",\n    \"pieces_per_package\": null,\n    \"package_weight\": 0,\n    \"yard_slot\": null,\n    \"package_type_code\": \"\",\n    \"package_type\": null,\n    \"extra_attributes\": null,\n    \"flex_fileds\": [{\n      \"label\": \"Name\",\n      \"value\": \"Octopi\"\n    }]\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/general_cargoes/update","name":"update","apis":[{"api_url":"/api/v1/general_cargoes/:id.json","http_method":"PUT","short_description":"Update general cargo data","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to update data for a specific general cargo.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":400,"description":"Bad request.","metadata":null},{"code":422,"description":"Unprocessable entity.","metadata":null},{"code":500,"description":"Internal server error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"\n\u003cp\u003eThe general cargo ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"goods_description","full_name":"goods_description","description":"\n\u003cp\u003eThe cargo’s goods description.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"consignee_names","full_name":"consignee_names","description":"\n\u003cp\u003eAn array of consignee names.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of String","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"quantity","full_name":"quantity","description":"\n\u003cp\u003eThe cargo’s quantity.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Numeric","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"package_weight","full_name":"package_weight","description":"\n\u003cp\u003eThe cargo’s package weight.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Numeric","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"package_type","full_name":"package_type","description":"\n\u003cp\u003eThe cargo’s package type name or code (eg. ‘Box’ or ‘QP’).\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"extra_attributes","full_name":"extra_attributes","description":"\n\u003cp\u003eA key-value pair of extra attributes for the cargo.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"current_location_id","full_name":"current_location_id","description":"\n\u003cp\u003ethe container current location id.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"current_location_type","full_name":"current_location_type","description":"\n\u003cp\u003ethe type of current location\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eTerminal\u003c/code\u003e, \u003ccode\u003eYardArea\u003c/code\u003e, \u003ccode\u003eYardSlot\u003c/code\u003e, \u003ccode\u003ePort\u003c/code\u003e, \u003ccode\u003eBerthArea\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"flex_fields","full_name":"flex_fields","description":"\n\u003cp\u003eAn array of hashes, where each hash contains a flex field’s canonical name and the corresponding value to be set on the general cargo.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of Hash","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl -X PUT \\\n\"https://app.octopi.co/api/v1/general_cargoes/:id.json\" \\\n-H \"Accept: application/json\" \\\n-H \"Content-Type: application/json\" \\\n-H \"Authorization: Token token=YOUR_TOKEN\" \\\n-d '{\n  \"general_cargo\": {\n    \"goods_description\": \"Pipes\",\n    \"consignee_names\": [\"UNITY LOGISTICS\"],\n    \"quantity\": 12.0,\n    \"package_weight\": 100,\n    \"package_type\": \"crate\",\n    \"current_location_id\": 35,\n    \"current_location_type\": \"Terminal\",\n    \"extra_attributes\": {\n      \"foo\": \"bar\"\n    }\n  }\n}'\n","{\n  \"general_cargo\": {\n    \"id\": 1234,\n    \"reference_number\": \"\",\n    \"quantity\": 12.0,\n    \"goods\": \"Pipes\",\n    \"goods_description\": \"12.0 crates of Pipes\",\n    \"shipping_marks\": \"\",\n    \"usage\": \"import\",\n    \"consignee\": \"Consignee: UNITY LOGISTICS\",\n    \"current_location_type\": \"YardArea\",\n    \"current_location\": \"Warehouse\",\n    \"weight_unit\": \"lb\",\n    \"weight\": 0.0,\n    \"dimension_unit\": \"inches\",\n    \"width\": 0.0,\n    \"height\": 0.0,\n    \"length\": 0.0,\n    \"volume\": \"0.00\",\n    \"pieces_per_package\": null,\n    \"package_weight\": 100,\n    \"yard_slot\": null,\n    \"package_type_code\": \"CR\",\n    \"package_type\": \"crate\",\n    \"extra_attributes\": {\n      \"foo\": \"bar\"\n    },\n    \"flex_fields\": []\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"gensets":{"doc_url":"/api/v1/documentation/1.0/gensets","id":"gensets","api_url":"/api/v1","name":"Gensets","short_description":"This resource allows you to retrieve data for one genset from Octopi.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/gensets/index","name":"index","apis":[{"api_url":"/api/v1/gensets.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis genset API endpoint allows querying all gensets.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Genset Not Found","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/gensets.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n","{\n  \"gensets\": [\n    {\n      \"id\": 123,\n      \"number\": \"G085\",\n      \"seal\": \"5885304\",\n      \"chassis\": null,\n      \"has_battery\": true,\n      \"created_by\": \"Peter Parker\",\n      \"updated_by\": null,\n      \"created_at\": \"2018-08-20T18:43:54.138-04:00\",\n      \"updated_at\": \"2019-05-31T17:23:49.144-04:00\",\n      \"equipment_condition\": null,\n      \"fuel_level\": \"1.5\",\n      \"container\": null,\n      \"current_location\": \"Terminal: Happy Terminals\",\n      \"shipping_line\": \"Shipping Line: Evergreen\",\n      \"active\": false,\n      \"hours\": null\n    },\n    {\n      \"id\": 456,\n      \"number\": \"G086\",\n      \"seal\": null,\n      \"chassis\": null,\n      \"has_battery\": true,\n      \"created_by\": null,\n      \"updated_by\": null,\n      \"created_at\": \"2019-09-11T15:37:59.355-04:00\",\n      \"updated_at\": \"2019-09-11T15:37:59.355-04:00\",\n      \"equipment_condition\": null,\n      \"fuel_level\": null,\n      \"container\": null,\n      \"current_location\": null,\n      \"shipping_line\": \"Shipping Line: King Ocean\",\n      \"active\": true,\n      \"hours\": null\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/gensets/show","name":"show","apis":[{"api_url":"/api/v1/gensets/:number.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis genset API endpoint allows querying for one genset.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Genset Not Found","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/gensets/MYGENSET123.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n","{\n  \"genset\": {\n    \"id\": 1234,\n    \"number\": \"G000123\",\n    \"seal\": null,\n    \"chassis\": null,\n    \"has_battery\": true,\n    \"created_by\": null,\n    \"updated_by\": null,\n    \"created_at\": \"2022-09-23T11:09:57.098-04:00\",\n    \"updated_at\": \"2022-09-23T11:09:57.098-04:00\",\n    \"equipment_condition\": null,\n    \"fuel_level\": null,\n    \"container\": null,\n    \"current_location\": null,\n    \"active\": true,\n    \"shipping_line\": null,\n    \"hours\": null\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"invoices":{"doc_url":"/api/v1/documentation/1.0/invoices","id":"invoices","api_url":"/api/v1","name":"Invoices","short_description":"This resource allows you to fetch customer invoices from Octopi.","full_description":"\n\u003cp\u003eIn Octopi, the following three types of invoices can be created: * A pro-forma invoice for a Bill of Lading. These invoices is generally for consignees (importers or exporters). It shows how much they need to pay to retrieve a container from the terminal. * An invoice for a container movement. Any container movement in Octopi can generate an invoice if there is a tariff tied to this event type. For example, a tariff can be created for all ‘Gate Out Full’ so that every time a container gates out full out of the terminal, an invoice is created for the consignee to which this container is being delivered to. * An invoice for a voyage. An invoice can be generated to charge the shipping lines for the vessel operations and/or container storage following a voyage.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/invoices/index","name":"index","apis":[{"api_url":"/api/v1/invoices.json","http_method":"GET","short_description":"Gets a list of invoices","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to access these invoices. To fetch invoices, it is mandatory to pass in two query parameters: * a \u003cstrong\u003ecustomer_type\u003c/strong\u003e which can be either \u003cstrong\u003eConsignee\u003c/strong\u003e, \u003cstrong\u003eShippingLine\u003c/strong\u003e or \u003cstrong\u003eAgent\u003c/strong\u003e * a \u003cstrong\u003ecustomer_general_ledger_id\u003c/strong\u003e which is a String and represents the General Ledger ID stored in Octopi (and the accounting system) for that Shipping Line or Consignee.\u003c/p\u003e\n\n\u003cp\u003eIn addition, you can also pass in a parameter called ‘created_during’ to filter and only have access to specific invoices for that customer.\u003c/p\u003e\n\n\u003cp\u003eIn Octopi, some invoices are generated automatically by the software (triggered by an event such as a gate out for example) or generated manually by a user (by clicking on a button to generate the invoice). When created automatically, the \u003cstrong\u003ecreation_method\u003c/strong\u003e returned by this API will be \u003cstrong\u003eAUTO\u003c/strong\u003e. For invoices generated manually by a user, \u003cstrong\u003ecreation_method\u003c/strong\u003e is set to \u003cstrong\u003eMANUAL\u003c/strong\u003e.\u003c/p\u003e\n\n\u003cp\u003eFor Bill of Lading pro-formas, it is possible for a pro-forma to be created for all the containers in the Bill Of Lading or for only some of the containers in the Bill Of Lading. To find out which containers were billed for in that pro-forma, there are two arrays called \u003cstrong\u003ebl_container_ids\u003c/strong\u003e and \u003cstrong\u003ebl_container_numbers\u003c/strong\u003e that return respectively an array of IDs and an array of container numbers for the containers that were billed in this pro-forma.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":400,"description":"Invalid request.","metadata":null},{"code":500,"description":"Server crashed.","metadata":null}],"params":[{"name":"line_items_q","full_name":"line_items_q","description":"\n\u003cp\u003eline_items_q stands for line item query. It allows you to search invoices by line items description.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"customer_type","full_name":"customer_type","description":"\n\u003cp\u003eThe type of customer.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eShippingLine\u003c/code\u003e, \u003ccode\u003eConsignee\u003c/code\u003e, \u003ccode\u003eAgent\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"customer_general_ledger_id","full_name":"customer_general_ledger_id","description":"\n\u003cp\u003eThe General Ledger ID for the customer. You must include a customer_type if you include a customer_general_ledger_id.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"created_during","full_name":"created_during","description":"\n\u003cp\u003eFilter invoices based on when they were created. Can be one of ‘payment’, ‘gate_out’, ‘gate_in’, ‘tally’, etc…\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"movement_id","full_name":"movement_id","description":"\n\u003cp\u003eFilter invoices by movement id.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"creation_method","full_name":"creation_method","description":"\n\u003cp\u003eFilter invoices by creation method. One of auto or manual.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"missing_general_ledger_id","full_name":"missing_general_ledger_id","description":"\n\u003cp\u003eSet to true to return all invoices that do not have a general ledger ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"currency","full_name":"currency","description":"\n\u003cp\u003eFilter invoices by currency\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"bill_of_lading_number","full_name":"bill_of_lading_number","description":"\n\u003cp\u003eFilter invoices by Bill of Lading Number\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"bill_of_lading_id","full_name":"bill_of_lading_id","description":"\n\u003cp\u003eFilter invoices by Bill of Lading ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"tariff_id","full_name":"tariff_id","description":"\n\u003cp\u003eFilter invoices by tariff\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_id","full_name":"container_id","description":"\n\u003cp\u003eFilter invoices by container/cargo ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_number","full_name":"container_number","description":"\n\u003cp\u003eFilter invoices by container number\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"voyage_id","full_name":"voyage_id","description":"\n\u003cp\u003eFilter invoices by voyage ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"voyage_number","full_name":"voyage_number","description":"\n\u003cp\u003eFilter invoices by voyage number\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_visit_id","full_name":"truck_visit_id","description":"\n\u003cp\u003eFilter invoices by truck visit ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"paid","full_name":"paid","description":"\n\u003cp\u003eFilter for paid invoices by setting to true. Or set to false to get all unpaid invoices. If absent, Octopi will return both paid and unpaid invoices.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"is_proforma","full_name":"is_proforma","description":"\n\u003cp\u003eFilter for proforma invoices by setting to true. Or set to false to return all invoices that are not proformas. If absent, Octopi will return all invoices: proforma or not.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"approved","full_name":"approved","description":"\n\u003cp\u003eFilter for approved invoices by setting to true. Or set to false to get all not approved invoices. If absent, Octopi will return both approved and not approved invoices.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"general_ledger_id","full_name":"general_ledger_id","description":"\n\u003cp\u003eFilter invoices by invoice general ledger ID.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"total","full_name":"total","description":"\n\u003cp\u003eFilter invoices by total amount (matched after rounding to 2 decimal places).\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/invoices.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\" -d '{\"customer_type\":\"ShippingLine\", \"customer_general_ledger_id\":\"ADD SHIPPING LINE ID HERE\"}'\n","  \"actions\" : {\n      \"last\" : {\n         \"url\" : \"https://app.octopi.co/api/v1/invoices.json?page=18\",\n         \"method\" : \"GET\"\n      },\n      \"next\" : {\n         \"url\" : \"https://app.octopi.co/api/v1/invoices.json?page=2\",\n         \"method\" : \"GET\"\n      },\n      \"previous\" : {\n         \"url\" : \"https://app.octopi.co/api/v1/invoices.json\",\n         \"method\" : \"GET\"\n      },\n      \"index\" : {\n         \"method\" : \"GET\",\n         \"url\" : \"https://app.octopi.co/api/v1/invoices.json\"\n      }\n   }\n   \"invoices\" : [\n      {\n         \"general_ledger_id\" : null,\n         \"taxes_and_fees\" : \"0.0\",\n         \"id\" : 12008,\n         \"is_proforma\": true,\n         \"paid\": false,\n         \"approved\": true,\n         \"approved_by\": \"John Doe\",\n         \"created_during\": \"voyage\",\n         \"movement_id\": 123456,\n         \"creation_method\": \"manual\",\n         \"line_items\" : [\n            {\n               \"quantity\" : 1,\n               \"currency\" : \"USD\",\n               \"total\" : \"100.0\",\n               \"description\" : \"Crane Fee\",\n               \"billed_by\" : \"unit\",\n               \"billed_per\" : \"move\",\n               \"amount\" : 100.0,\n               \"item\" : \"REFN1231\",\n               \"tariff_general_ledger_id\" : \"REFN1231\",\n               \"tariff_name\": \"Crane Lift Tariff\"\n               \"container\": \"MAEU1312311\"\n            },\n            {\n               \"description\" : \"Stevedoring Fee\",\n               \"billed_by\" : \"unit\",\n               \"total\" : \"50.0\",\n               \"quantity\" : 1,\n               \"currency\" : \"USD\",\n               \"item\" : \"REFN1232\",\n               \"tariff_general_ledger_id\" : \"REFN1232\",\n               \"billed_per\" : \"move\",\n               \"amount\" : \"50.0\",\n               \"tariff_name\": \"Stevedoring Tariff\"\n               \"container\": \"MAEU1312311\"\n            },\n            ,\n            {\n               \"description\" : \"Extra Fee\",\n               \"billed_by\" : \"unit\",\n               \"total\" : \"50.0\",\n               \"quantity\" : 1,\n               \"currency\" : \"USD\",\n               \"item\" : \"REFN1230\",\n               \"billed_per\" : \"move\",\n               \"amount\" : \"30.0\",\n               \"tariff_general_leger_id\" : \"REFN1230\",\n               \"tariff_name\": \"Extra fee tariff\"\n               \"container\": \"MAEU1010101\"\n            }\n         ],\n         \"totals_by_container\": {\n           \"MAEU1312311\": 150.0,\n           \"MAEU1010101\": 30.0\n         },\n         \"subtotal\" : \"49240.0\",\n         \"customer\" : {\n            \"id\" : 49,\n            \"address\" : \"\",\n            \"general_ledger_id\" : \"123\",\n            \"email\" : \"\",\n            \"name\" : \"DEMO LINE\",\n            \"contact_person\" : \"\",\n            \"phone\" : \"\"\n         },\n         \"voyage\" : {\n            \"id\" : 1033,\n            \"vessel\" : {\n               \"imo_number\" : \"9252876\",\n               \"name\" : \"NADJA\",\n               \"vessel_type\" : \"container_ship\"\n            },\n            \"number\" : \"115\"\n         },\n         \"truck_visit\": {\n            \"id\": 520155,\n            \"truck\": {\n                \"id\": 2826,\n                \"license_plate\": \"CESF51\",\n                \"trucking_company_id\": 118,\n                \"active\": true,\n                \"allowed_until\": null\n            },\n            \"truck_driver\": {\n                \"id\": 23897,\n                \"number\": null,\n                \"license_number\": \"N/A\",\n                \"firstname\": \"Anier\",\n                \"lastname\": \"Venega\",\n                \"twic\": null,\n                \"active\": true\n            },\n            \"gated_in_at\": \"2019-05-10T23:47:25Z\",\n            \"gated_out_at\": \"2019-05-11T00:00:58Z\"\n         },\n         \"total\" : \"49240.0\",\n         \"created_at\" : \"2016-11-28T19:01:41.936-05:00\",\n         \"invoiced_at\" : \"2016-11-28T19:01:41.936-05:00\",\n         \"approved_at\" : \"2016-11-28T19:02:41.936-05:00\"\n      },\n      {\n         \"general_ledger_id\" : null,\n         \"taxes_and_fees\" : \"0.0\",\n         \"id\" : 12008,\n         \"is_proforma\": true,\n         \"paid\": false,\n         \"approved\": false,\n         \"approved_by\": null,\n         \"created_during\" : \"payment\",\n         \"movement_id\": null,\n         \"creation_method\": \"auto\",\n         \"line_items\" : [\n            {\n               \"quantity\" : 1,\n               \"currency\" : \"USD\",\n               \"total\" : \"100.0\",\n               \"description\" : \"Crane Fee\",\n               \"billed_by\" : \"unit\",\n               \"billed_per\" : \"move\",\n               \"amount\" : 100.0,\n               \"item\" : \"REFN1231\",\n               \"tariff_general_ledger_id\" : \"REFN1231\",\n               \"tariff_name\": \"Crane Lift Tariff\"\n               \"container\": \"MAEU1312311\"\n            }\n         ],\n         \"subtotal\" : \"49240.0\",\n         \"customer\" : {\n            \"id\" : 49,\n            \"address\" : \"\",\n            \"general_ledger_id\" : \"123\",\n            \"email\" : \"\",\n            \"name\" : \"IMPORTER ONE\",\n            \"contact_person\" : \"\",\n            \"phone\" : \"\"\n         },\n         \"bol_segment\" : {\n            \"id\": 1034,\n            \"bl_number\" : \"1033\",\n            \"containers\": [\"BSIU9028942\", \"AMLU5506569\"]\n         },\n         \"bill_of_lading\" : {\n            \"id\": 1034,\n            \"bl_number\" : \"1033\",\n            \"containers\": [\"BSIU9028942\", \"AMLU5506569\"]\n         },\n         \"bl_container_ids\": [2131, 1231],\n         \"bl_container_numbers\": [\"BSIU9028942\", \"AMLU5506569\"],\n         \"total\" : \"500.0\",\n         \"created_at\" : \"2016-11-28T19:01:41.936-05:00\",\n         \"invoiced_at\" : \"2016-11-28T19:01:41.936-05:00\",\n         \"approved_at\" : \"2016-11-28T19:02:41.936-05:00\"\n      }\n   ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/invoices/update","name":"update","apis":[{"api_url":"/api/v1/invoices/:id.json","http_method":"PUT","short_description":"Updates an invoice","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to update an invoice. You can update the general ledger ID, approval status, and paid status.\u003c/p\u003e\n\n\u003cp\u003eWhen setting approved to true, the invoice will be marked as approved with the current timestamp and user. When setting approved to false, the approval information will be cleared.\u003c/p\u003e\n\n\u003cp\u003eThe paid status can be toggled between true and false to reflect payment status.\u003c/p\u003e\n\n\u003cp\u003eNote: Invoices that are already paid or approved may have restrictions on what fields can be updated.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":400,"description":"Invalid request.","metadata":null},{"code":500,"description":"Server crashed.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"invoice","full_name":"invoice","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"general_ledger_id","full_name":"invoice[general_ledger_id]","description":"\n\u003cp\u003eThe general ledger ID for the invoice\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"approved","full_name":"invoice[approved]","description":"\n\u003cp\u003eSet to true to approve the invoice, false to unapprove it\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e, \u003ccode\u003e1\u003c/code\u003e, \u003ccode\u003e0\u003c/code\u003e.","expected_type":"boolean","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"paid","full_name":"invoice[paid]","description":"\n\u003cp\u003eSet to true to mark the invoice as paid, false to mark as unpaid\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e, \u003ccode\u003e1\u003c/code\u003e, \u003ccode\u003e0\u003c/code\u003e.","expected_type":"boolean","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["# Update all fields in a single request\ncurl \"https://app.octopi.co/api/v1/invoices/353388.json\" -X PUT -d '{ \"invoice\": { \"general_ledger_id\": \"C8191\", \"approved\": true, \"paid\": true } }' -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","# Update only specific fields as needed\ncurl \"https://app.octopi.co/api/v1/invoices/353388.json\" -X PUT -d '{ \"invoice\": { \"approved\": true } }' -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"invoice\" : {\n      \"id\" : \"222\",\n      \"number\": \"5\",\n      \"general_ledger_id\": \"1231\",\n      \"created_at\": \"2016-11-28T19:01:41.936-05:00\",\n      \"invoiced_at\": \"2016-11-28T19:01:41.936-05:00\",\n      \"approved\": true,\n      \"approved_at\": \"2016-11-28T19:05:41.936-05:00\",\n      \"approved_by\": \"Admin User\",\n      \"paid\": true,\n      \"total\": 1231.00\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"manifests":{"doc_url":"/api/v1/documentation/1.0/manifests","id":"manifests","api_url":"/api/v1","name":"Manifests","short_description":"This resources allows you to create a manifest in Octopi.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/manifests/manifest","name":"manifest","apis":[{"api_url":"/api/v1/manifests.json","http_method":"POST","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to create a manifest. Please check the payload specification to make sure the required attributes are part of the payload and the optional attributes respect the specifications.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request","metadata":null},{"code":403,"description":"Forbidden","metadata":null},{"code":404,"description":"Not Found","metadata":null},{"code":422,"description":"Unprocessable Entity","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"shipping_line","full_name":"shipping_line","description":"\n\u003cp\u003eThis must be a shipping line code that exists in Octopi.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"voyage_id","full_name":"voyage_id","description":"\n\u003cp\u003eThis must be a voyage ID that exists in Octopi. Either voyage id or voyage number is required.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"voyage_number","full_name":"voyage_number","description":"\n\u003cp\u003eThis must be a voyage number that exists in Octopi. Either voyage id or voyage number is required.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"manifest","full_name":"manifest","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"client_identifier","full_name":"manifest[client_identifier]","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"remarks","full_name":"manifest[remarks]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_line_voyage_number","full_name":"manifest[shipping_line_voyage_number]","description":"\n\u003cp\u003eNotice the shipping_line_voyage_number param is the number that will be used in the EDI messages sent to the shipping line. Make sure this is the Voyage Number your shipping line is expecting. voyage_number param will be used if left blank.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/manifests.json\" -d '{ \"voyage_id\":\"1234\", \"shipping_line\":\"Shipping Line Code\" ,\"manifest\": {\"client_identifier\":\"11223344\"}}' -X POST -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n","Example Payload:\n\n{\n  \"voyage_id\": 123,\n  \"shipping_line\": \"Shipping line Code\",\n  \"manifest\": {\n    \"client_identifier\": \"client_id\",\n    \"remarks\": \"We build API for manifest\"\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/manifests/destroy","name":"destroy","apis":[{"api_url":"/api/v1/manifests/:client_identifier","http_method":"DELETE","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request","metadata":null},{"code":403,"description":"Forbidden","metadata":null},{"code":404,"description":"Not Found","metadata":null},{"code":422,"description":"Unprocessable Entity","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[],"returns":[],"examples":[],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/manifests/index","name":"index","apis":[{"api_url":"/api/v1/manifests","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to return a list of all the manfiest in Octopi.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request","metadata":null},{"code":403,"description":"Forbidden","metadata":null},{"code":404,"description":"Not Found","metadata":null},{"code":422,"description":"Unprocessable Entity","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"voyage_number","full_name":"voyage_number","description":"\n\u003cp\u003eTo filter manifest based on voyage number. This must be a voyage number that exists in Octopi.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/manifests.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"movements":{"doc_url":"/api/v1/documentation/1.0/movements","id":"movements","api_url":"/api/v1","name":"Movements","short_description":"This resource allows you to fetch movements from Octopi.","full_description":"\n\u003cp\u003eIn Octopi, the following types of movements can be created.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/movements/index","name":"index","apis":[{"api_url":"/api/v1/movements.json","http_method":"GET","short_description":"Gets a list of movements","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to fetch cargo movements.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":400,"description":"Bad request.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"arrival_voyage_id","full_name":"arrival_voyage_id","description":"\n\u003cp\u003eFilter movements that are associated with an arrival voyage. You can pass the voyage Octopi ID or the octopi voyage number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"departure_voyage_id","full_name":"departure_voyage_id","description":"\n\u003cp\u003eFilter movements that are associated with a departure voyage. You can pass the Octopi ID for the voyage.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"departure_voyage_display_name","full_name":"departure_voyage_display_name","description":"\n\u003cp\u003eFilter movements that are associated with a departure voyage. You can pass the full Voyage Display Name (Vessel Name + Voyage Number).\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_id","full_name":"container_id","description":"\n\u003cp\u003eFilter movements associated with a container. You can pass the container Octopi ID or the container number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"chassis_id","full_name":"chassis_id","description":"\n\u003cp\u003eFilter movements associated with a chassis. You can pass the chassis Octopi ID or the chassis number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"genset_id","full_name":"genset_id","description":"\n\u003cp\u003eFilter movements associated with a genset. You can pass the genset Octopi ID or the genset number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"booking_id","full_name":"booking_id","description":"\n\u003cp\u003eFilter movements associated with a booking. You can pass the booking Octopi ID or the booking number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"barge_id","full_name":"barge_id","description":"\n\u003cp\u003eFilter movements associated with a barge. You must pass the barge Octopi ID.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"user_id","full_name":"user_id","description":"\n\u003cp\u003eFilter movements associated with a user. You must pass the user Octopi ID.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"gate_ids","full_name":"gate_ids","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of any type","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_line_id","full_name":"shipping_line_id","description":"\n\u003cp\u003eFilter movements associated with a shipping line. You can pass the shipping line Octopi ID or the shipping line code.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_visit_id","full_name":"truck_visit_id","description":"\n\u003cp\u003eFilter movements associated with a truck visit. You must use the truck visit ID.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_id","full_name":"truck_id","description":"\n\u003cp\u003eFilter movements associated with a truck. You can pass the truck Octopi ID or the truck license plate.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_driver_id","full_name":"truck_driver_id","description":"\n\u003cp\u003eFilter movements associated with a truck driver. You must pass the truck driver Octopi ID.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"trucking_company_id","full_name":"trucking_company_id","description":"\n\u003cp\u003eFilter movements associated with a trucking company. You can pass the trucking company Octopi ID or the trucking company code.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"status","full_name":"status","description":"\n\u003cp\u003eFilter movements by their status: whether it was for a full container or an empty container.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003efull\u003c/code\u003e, \u003ccode\u003eempty\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"movement_types","full_name":"movement_types","description":"\n\u003cp\u003eCan be an array or a single value that will be used to filter movements by the type.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003estripping_only\u003c/code\u003e, \u003ccode\u003epartial_stripping_only\u003c/code\u003e, \u003ccode\u003efull_stripping_and_stuffing\u003c/code\u003e, \u003ccode\u003epartial_stripping_and_stuffing\u003c/code\u003e, \u003ccode\u003ecustoms_verification\u003c/code\u003e, \u003ccode\u003egate_in\u003c/code\u003e, \u003ccode\u003egate_out\u003c/code\u003e, \u003ccode\u003eloading\u003c/code\u003e, \u003ccode\u003eunloading\u003c/code\u003e, \u003ccode\u003einventory\u003c/code\u003e, \u003ccode\u003eother\u003c/code\u003e, \u003ccode\u003emanual_insert\u003c/code\u003e, \u003ccode\u003emanifest\u003c/code\u003e, \u003ccode\u003eovershipped\u003c/code\u003e, \u003ccode\u003estuffing_only\u003c/code\u003e, \u003ccode\u003evessel_convenience\u003c/code\u003e, \u003ccode\u003eship_to_ship_shifting\u003c/code\u003e, \u003ccode\u003eship_to_port_shifting\u003c/code\u003e, \u003ccode\u003eport_to_ship_shifting\u003c/code\u003e, \u003ccode\u003eoverlanded\u003c/code\u003e, \u003ccode\u003econtainer_weight\u003c/code\u003e, \u003ccode\u003econtainer_damage\u003c/code\u003e, \u003ccode\u003econtainer_repair\u003c/code\u003e, \u003ccode\u003emoved_by_octopi\u003c/code\u003e, \u003ccode\u003ebreakbulk_delivery\u003c/code\u003e, \u003ccode\u003evehicle_delivery\u003c/code\u003e, \u003ccode\u003eboat_delivery\u003c/code\u003e, \u003ccode\u003econtainer_cleaning\u003c/code\u003e, \u003ccode\u003ereefer_pre_trip\u003c/code\u003e, \u003ccode\u003edock_receipt\u003c/code\u003e, \u003ccode\u003eyard\u003c/code\u003e, \u003ccode\u003etransfer_out\u003c/code\u003e, \u003ccode\u003etransfer_in\u003c/code\u003e, \u003ccode\u003econtainer_scanning\u003c/code\u003e, \u003ccode\u003ereefer_plug_in\u003c/code\u003e, \u003ccode\u003ereefer_plug_out\u003c/code\u003e, \u003ccode\u003econtainer_stripping\u003c/code\u003e, \u003ccode\u003estock_transfer\u003c/code\u003e, \u003ccode\u003ebreakbulk_split\u003c/code\u003e, \u003ccode\u003ebreakbulk_merge\u003c/code\u003e, \u003ccode\u003econtainer_inspection\u003c/code\u003e, \u003ccode\u003econtainer_reseal\u003c/code\u003e, \u003ccode\u003esend_to_berth\u003c/code\u003e, \u003ccode\u003ereceive_from_berth\u003c/code\u003e, \u003ccode\u003econtainer_repair_start\u003c/code\u003e, \u003ccode\u003epartial_stuffing\u003c/code\u003e, \u003ccode\u003ebooking_updated\u003c/code\u003e, \u003ccode\u003estorage_invoice\u003c/code\u003e, \u003ccode\u003econtainer_edit\u003c/code\u003e, \u003ccode\u003erail_manifest\u003c/code\u003e, \u003ccode\u003erail_discharge\u003c/code\u003e, \u003ccode\u003erail_load\u003c/code\u003e, \u003ccode\u003eterminal_service\u003c/code\u003e, \u003ccode\u003emount\u003c/code\u003e, \u003ccode\u003edismount\u003c/code\u003e, \u003ccode\u003echassis_damage\u003c/code\u003e, \u003ccode\u003echassis_repair\u003c/code\u003e, \u003ccode\u003echassis_booking_updated\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"dock_receipt_number","full_name":"dock_receipt_number","description":"\n\u003cp\u003eFilter movements associated with a dock receipt number\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"start_date","full_name":"start_date","description":"\n\u003cp\u003eFilter movements that occurred after the start date. Must be formatted as YYYY-MM-DD. This filters by the movement’s moved_at attribute.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"end_date","full_name":"end_date","description":"\n\u003cp\u003eFilter movements that occurred before the end date. Must be formatted as YYYY-MM-DD. This filters by the movement’s moved_at attribute.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/movements.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\" -d '{\"movement_types\":[\"gate_in\", \"gate_out\"], \"container_id\":\"OCTO1234561\"}'\n","{\n   \"movements\" : [\n      {\n         \"hazmat_codes\" : [],\n         \"truck_driver\" : {\n            \"email\" : null,\n            \"firstname\" : \"John\",\n            \"lastname\" : \"Doe\",\n            \"id\" : 21\n         },\n         \"trucking_company\" : {\n            \"code\" : 'ABCD',\n            \"id\" : 12,\n            \"name\" : \"E-RECYCLING\"\n         },\n         \"remarks\" : \"this is a remark\",\n         \"goods\" : \"fruits and veggies\",\n         \"moved_at\" : \"2021-05-10T22:23:20Z\",\n         \"container_new_seal\" : \"123131\",\n         \"chassis\" : {\n            \"id\" : 43814,\n            \"number\" : \"HMS12311\",\n            \"owner\": {\n                  \"id\": 78,\n                  \"type\": \"ShippingLine\",\n                  \"name\": \"Shipping line name\",\n                  \"code\": \"CODE\"\n              }\n         },\n         \"export_release\" : {\n            \"id\" : 8724,\n            \"number\" : \"162660\"\n         },\n         \"booking\" : {\n            \"id\" : 640653,\n            \"number\" : \"BOK1231\"\n         },\n         \"destination_type\" : \"Consignee\",\n         \"shipping_line\" : {\n            \"id\" : 15,\n            \"name\" : \"COSCO\",\n            \"code\" : \"COSCO\"\n         },\n         \"gate\" : {\n            \"name\" : \"Main Gate\",\n            \"id\" : 12\n         },\n         \"updated_at\" : \"2021-05-10T22:23:19Z\",\n         \"id\" : 12,\n         \"quantity\" : 1,\n         \"volume\": null,\n         \"cargo_weight\" : 500,\n         \"truck\" : {\n            \"number\" : \"12\",\n            \"id\" : 306,\n            \"license_plate\" : \"TM00001\"\n         },\n         \"user\" : {\n            \"lastname\" : \"Doe\",\n            \"firstname\" : \"John\",\n            \"email\" : \"john.doe@example.com\",\n            \"id\" : 12,\n            \"name\" : \"John Doe\"\n         },\n         \"source\" : \"Terminal: Main Terminal\",\n         \"destination\" : \"Consignee: E-RECYCLING\",\n         \"container\" : {\n            \"container_type_label\" : \"20DV\",\n            \"arrival_voyage\" : {\n               \"vessel_name\" : \"FALMOUTH\",\n               \"number\" : \"55E\",\n               \"id\" : 225222,\n               \"vessel_imo\" : \"9266530\"\n            },\n            \"consignee\": {\n                  \"id\": 67629,\n                  \"name\": \".NOT AVAILABLE.\",\n                  \"email\": \"john@example.com\",\n                  \"address\": \"address\",\n                  \"customs_code\": null,\n                  \"vat_number\": null,\n                  \"general_ledger_id\": \"M001\",\n                  \"contact_person\": null,\n                  \"phone\": null\n              },\n            \"goods\" : \"\",\n            \"id\" : 2627430,\n            \"number\" : \"OCTO0326118\"\n         },\n         \"created_at\" : \"2021-05-10T22:23:19Z\",\n         \"container_original_seal\" : \"\",\n         \"is_admin\" : false,\n         \"truck_visit\" : {\n            \"gated_in_at\" : \"2021-05-10T22:05:34Z\",\n            \"gated_out_at\" : \"2021-05-10T22:23:28Z\",\n            \"id\" : 12,\n            \"truck_driver\" : {\n               \"number\" : \"ABCD\",\n               \"twic\" : \"!23131\",\n               \"active\" : true,\n               \"id\" : 12,\n               \"license_number\" : \"CA1231\",\n               \"lastname\" : \"Doe\",\n               \"firstname\" : \"John\"\n            },\n            \"truck\" : {\n               \"active\" : true,\n               \"trucking_company_id\" : 52,\n               \"id\" : 306,\n               \"license_plate\" : \"TM00826\",\n               \"allowed_until\" : null\n            }\n         },\n         \"source_type\" : \"Terminal\",\n         \"status\" : \"empty\",\n         \"movement_type\" : \"gate_out\"\n      },\n      {\n         \"export_release\" : {\n            \"number\" : \"1241241\",\n            \"id\" : 12\n         },\n         \"container_new_seal\" : \"12\",\n         \"chassis\" : {\n            \"id\" : 12,\n            \"number\" : \"HMS030\"\n         },\n         \"booking\" : {\n            \"id\" : 12,\n            \"number\" : \"BOOK121231\"\n         },\n         \"shipping_line\" : {\n            \"code\" : \"COSCO\",\n            \"id\" : 12,\n            \"name\" : \"COSCO\"\n         },\n         \"destination_type\" : \"Terminal\",\n         \"hazmat_codes\" : [],\n         \"trucking_company\" : {\n            \"code\" : null,\n            \"id\" : 52,\n            \"name\" : \"E-RECYCLING\"\n         },\n         \"truck_driver\" : {\n            \"id\" : 12,\n            \"email\" : \"john.doe@example.com\",\n            \"firstname\" : \"John\",\n            \"lastname\" : \"Doe\"\n         },\n         \"moved_at\" : \"2021-05-10T22:05:54Z\",\n         \"remarks\" : null,\n         \"goods\" : \"Soccer balls\",\n         \"created_at\" : \"2021-05-10T22:05:54Z\",\n         \"container\" : {\n            \"id\" : 2646871,\n            \"number\" : \"OCTO1225720\",\n            \"goods\" : \"soccer balls\",\n            \"arrival_voyage\" : {\n               \"vessel_imo\" : \"9412476\",\n               \"number\" : \"55NB\",\n               \"id\" : 12,\n               \"vessel_name\" : \"ORINOCO\"\n            },\n            \"container_type_label\" : \"20DV\"\n         },\n         \"destination\" : \"Terminal: Main Yard\",\n         \"is_admin\" : false,\n         \"container_original_seal\" : \"9516436\",\n         \"source_type\" : \"Consignee\",\n         \"truck_visit\" : {\n            \"truck\" : {\n               \"active\" : true,\n               \"id\" : 12,\n               \"trucking_company_id\" : 12,\n               \"license_plate\" : \"TM1231\",\n               \"allowed_until\" : null\n            },\n            \"truck_driver\" : {\n               \"license_number\" : \"812931231\",\n               \"id\" : 27860,\n               \"firstname\" : \"John\",\n               \"lastname\" : \"Doe\",\n               \"number\" : \"!2311\",\n               \"active\" : true,\n               \"twic\" : null\n            },\n            \"gated_in_at\" : \"2021-05-10T22:05:34Z\",\n            \"id\" : 1393451,\n            \"gated_out_at\" : \"2021-05-10T22:23:28Z\"\n         },\n         \"status\" : \"full\",\n         \"movement_type\" : \"gate_in\",\n         \"updated_at\" : \"2021-05-10T22:05:54Z\",\n         \"quantity\" : null,\n         \"volume\": null,\n         \"id\" : 15,\n         \"gate\" : {\n            \"id\" : 33,\n            \"name\" : \"Main Gate\"\n         },\n         \"truck\" : {\n            \"id\" : 306,\n            \"number\" : \"\",\n            \"license_plate\" : \"TM00826\"\n         },\n         \"cargo_weight\" : 0,\n         \"user\" : {\n            \"firstname\" : \"John\",\n            \"lastname\" : \"Doe\",\n            \"email\" : \"john.doe@example.com\",\n            \"name\" : \"John Doe\",\n            \"id\" : 1231\n         },\n         \"source\" : \"Consignee: E-RECYCLING\"\n      }\n   ],\n   \"actions\" : {\n      \"previous\" : {\n         \"url\" : \"https://app.octopi.co/api/v1/movements.json?page=0\",\n         \"method\" : \"GET\"\n      },\n      \"last\" : {\n         \"url\" : \"https://app.octopi.co/api/v1/movements.json?page=361306\",\n         \"method\" : \"GET\"\n      },\n      \"next\" : {\n         \"method\" : \"GET\",\n         \"url\" : \"https://app.octopi.co/api/v1/movements.json?page=2\"\n      },\n      \"index\" : {\n         \"url\" : \"https://app.octopi.co/api/v1/movements\",\n         \"method\" : \"GET\"\n      }\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"packing_list_items":{"doc_url":"/api/v1/documentation/1.0/packing_list_items","id":"packing_list_items","api_url":"/api/v1","name":"Packing_list_items","short_description":"This resources allows you to create a packing list item in Octopi.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/packing_list_items/show","name":"show","apis":[{"api_url":"/api/v1/packing_list_items/:reference_number.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eReturns the packing list item\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"reference_number","full_name":"reference_number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/packing_list_items/:reference_number.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n","Returned payload:\n\n{\n   \"packing_list_item\" : {\n      \"shipping_marks\" : \"123123 1231 312\",\n      \"destination_code\": \"WOHO\",\n      \"items_at_terminal_destination_count\": 2,\n      \"items_at_terminal_count\": 2,\n      \"items_delivered_count\": 0,\n      \"reference_number\" : \"DO1231\",\n      \"weight\" : 100,\n      \"consignee_address\" : \"123 Rue due centre\",\n      \"dock_receipt_number\" : \"DR1\",\n      \"description\" : \"10 Drum of Rum\",\n      \"quantity\" : 10,\n      \"stripped_quantity\": \"9\",\n      \"container\" : {\n         \"number\" : \"KOSU2200161\"\n      },\n      \"consignee\" : {\n         \"name\" : \"MARENCO LTD\"\n      },\n      \"bill_of_lading\" : {\n         \"number\" : \"TEST123\"\n      },\n      \"volume\" : 100,\n      \"package_type\" : {\n         \"code\" : \"1A\",\n         \"description\" : \"drum\"\n      },\n      \"has_been_stripped\": true,\n      \"has_been_delivered\": false,\n      \"flex_fields\": [\n        {\n          \"label\": \"Order Number\",\n          \"value\": \"ORD-12345\"\n        }\n      ],\n      \"cargoes\": [\n        {\n          ....,\n          \"description\": \"Wood\",\n          \"current_location_arrived_at\": \"2018-01-26T02:08:00Z\",\n          \"current_location_type\": \"YardArea\",\n          \"current_location\": \"SHED4\",\n          \"current_location_code\": \"WOHO\",\n          ...\n        },\n        {\n          ....,\n          \"description\": \"More Wood\",\n          \"current_location_arrived_at\": \"2018-01-26T02:08:00Z\",\n          \"current_location_type\": \"YardArea\",\n          \"current_location\": \"SHED4\",\n          \"current_location_code\": \"WOHO\",\n          ...\n        }\n      ]\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/packing_list_items/create","name":"create","apis":[{"api_url":"/api/v1/packing_list_items.json","http_method":"POST","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"packing_list_item","full_name":"packing_list_item","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"reference_number","full_name":"packing_list_item[reference_number]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"quantity","full_name":"packing_list_item[quantity]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"weight","full_name":"packing_list_item[weight]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"volume","full_name":"packing_list_item[volume]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"description","full_name":"packing_list_item[description]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"consignee_address","full_name":"packing_list_item[consignee_address]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_marks","full_name":"packing_list_item[shipping_marks]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"dock_receipt_number","full_name":"packing_list_item[dock_receipt_number]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]},{"name":"bill_of_lading_number","full_name":"bill_of_lading_number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"consignee_name","full_name":"consignee_name","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"packing_list_id","full_name":"packing_list_id","description":"\n\u003cp\u003eThe packing list’s ID. If unavailable, please ensure you provide a client identifier.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"client_identifier","full_name":"client_identifier","description":"\n\u003cp\u003eThe packing list’s client identifier. If unavailable, please ensure you provide a packing list ID.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_client_identifier","full_name":"container_client_identifier","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"flex_fields","full_name":"flex_fields","description":"\n\u003cp\u003eAn array of hashes, where each hash contains a flex field’s canonical name and the corresponding value to be set on the packing list item.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of Hash","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/packing_list_items.json'\" -d '{ \"client_identifier\": \"Test 123\", \"bill_of_lading_number\": \"KODA123\", \"consignee_name\": \"1 DANS AUTO RECYCLING\", \"packing_list_item\": { \"reference_number\": \"GAF0012345\", \"quantity\": 5, \"weight\": 100.00, \"volume\": 45.00, \"description\": \"TEXT\", \"consignee_address\": \"123 St. 21122\", \"shipping_marks\": \"15155\", \"dock_receipt_number\": \"ABC12312\", \"package_type\": \"4A\", \"destination_code\": \"BBB-123\", \"extra_attributes\": { \"over_stripped\": \"6.0\" } }, \"flex_fields\": [ { \"order_number\": \"ORD-12345\" } ] }' -X POST -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n","Returned Payload:\n{\n  \"packing_list_item\": {\n    \"reference_number\": \"GAF0012345\",\n    \"destination_code\": \"BBB-123\",\n    \"bill_of_lading\": {\n      \"number\": \"KODA123\"\n    },\n    \"container\": {\n      \"number\": \"BSIU9792565\",\n      \"client_identifier\": \"Test 123\"\n    },\n    \"consignee\": {\n      \"name\": \"1 DANS AUTO RECYCLING\"\n    },\n    \"quantity\": 5,\n    \"weight\": 45.359237,\n    \"volume\": 45.0,\n    \"package_type\": {\n      \"code\": \"4A\",\n      \"description\": null\n    },\n    \"description\": \"TEXT\",\n    \"consignee_address\": \"123 St. 21122\",\n    \"shipping_marks\": \"15155\",\n    \"dock_receipt_number\": \"ABC12312\",\n    \"extra_attributes\": {\n      \"over_stripped\": \"6.0\"\n    },\n    \"flex_fields\": [\n      {\n        \"label\": \"Order Number\",\n        \"value\": \"ORD-12345\"\n      }\n    ]\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/packing_list_items/update","name":"update","apis":[{"api_url":"/api/v1/packing_list_items/:reference_number.json","http_method":"PATCH","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"packing_list_item","full_name":"packing_list_item","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"reference_number","full_name":"packing_list_item[reference_number]","description":"\n\u003cp\u003eThe reference number for this packing list item.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"consignee","full_name":"packing_list_item[consignee]","description":"\n\u003cp\u003eThe consignee for this packing list item.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"description","full_name":"packing_list_item[description]","description":"\n\u003cp\u003eThe goods description for this packing list item.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"extra_attributes","full_name":"packing_list_item[extra_attributes]","description":"\n\u003cp\u003eExtra attributes for this packing list item.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"package_type","full_name":"packing_list_item[package_type]","description":"\n\u003cp\u003eThe package type or package type code (eg. “box” or “4A”) of this packing list item.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"package_weight","full_name":"packing_list_item[package_weight]","description":"\n\u003cp\u003eThe package weight of this packing list item.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a decimal number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"quantity","full_name":"packing_list_item[quantity]","description":"\n\u003cp\u003eThe quantity of this packing list item.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"flex_fields","full_name":"packing_list_item[flex_fields]","description":"\n\u003cp\u003eAn array of hashes, where each hash contains a flex field’s canonical name and the corresponding value to be set on the packing list item.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of Hash","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/packing_list_items/:reference_number.json'\" -X PATCH -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE -d '{ \"packing_list_item\": { \"package_type\": \"box\", \"extra_attributes\": { \"foo\": \"bar\" }, \"quantity\": 5 }, \"flex_fields\": [ { \"order_number\": \"ORD-67890\" } ] }'\"\n","Returned payload:\n{\n  \"packing_list_item\": {\n    \"reference_number\": \"01234\",\n    \"destination_code\": \"BBB123\",\n    \"items_at_terminal_destination_count\": 0,\n    \"items_at_terminal_count\": 0,\n    \"items_delivered_count\": 0,\n    \"bill_of_lading\": {\n      \"number\": \"TEST123\"\n    },\n    \"container\": {\n      \"number\": \"BSIU1234567\",\n      \"client_identifier\": null,\n      \"status\": \"full\",\n      \"delivery_type\": null,\n      \"container_type\": {\n        \"code\": \"40HC\",\n        \"description\": \"\",\n        \"iso_type_code\": \"45G1\"\n      }\n    },\n    \"consignee\": {\n      \"name\": \"DAN'S AUTO RECYCLING\"\n    },\n    \"agent\": {\n      \"name\": null\n    },\n    \"vessel\": {\n      \"name\": null\n    },\n    \"voyage\": {\n      \"number\": null\n    },\n    \"quantity\": 5,\n    \"weight\": 45.359237,\n    \"volume\": 45.0,\n    \"package_type\": {\n      \"code\": \"4A\",\n      \"description\": \"box\"\n    },\n    \"description\": \"Many things in here\",\n    \"consignee_address\": \"123 St. 21122\",\n    \"shipping_marks\": \"15155\",\n    \"dock_receipt_number\": \"ABC12312\",\n    \"extra_attributes\": {\n      \"foo\": \"bar\"\n    },\n    \"flex_fields\": [\n      {\n        \"label\": \"Order Number\",\n        \"value\": \"ORD-67890\"\n      }\n    ],\n    \"has_been_stripped\": false,\n    \"has_been_delivered\": false,\n    \"stripped_quantity\": 0,\n    \"cargoes\": []\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/packing_list_items/destroy","name":"destroy","apis":[{"api_url":"/api/v1/packing_list_items/:reference_number.json","http_method":"DELETE","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"reference_number","full_name":"reference_number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/packing_list_items/:reference_number.json'\" -X DELETE -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"packing_lists":{"doc_url":"/api/v1/documentation/1.0/packing_lists","id":"packing_lists","api_url":"/api/v1","name":"Packing_lists","short_description":"This resources allows you to create a packing list.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/packing_lists/index","name":"index","apis":[{"api_url":"/api/v1/bill_of_ladings/:bill_of_lading_number/packing_lists.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/bill_of_ladings/:bill_of_lading_number/packing_lists.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n","Example Payload:\n\n{\n  \"actions\" : {\n    \"create\" : {\n      \"method\" : \"POST\",\n      \"url\" : \"http://app.octopi.co/api/v1/bill_of_ladings/ZIMUPAN2018926/packing_lists\"\n    },\n    \"index\" : {\n      \"method\" : \"GET\",\n      \"url\" : \"http://app.octopi.co/api/v1/bill_of_ladings/ZIMUPAN2018926/packing_lists\"\n    }\n  },\n  \"packing_lists\" : [\n    {\n      \"items_count\" : 2,\n      \"bill_of_lading\" : {\n        \"number\" : \"ZIMUPAN2018926\",\n        \"id\" : 232224\n      },\n      \"created_at\" : \"2018-04-18T12:31:52.304Z\",\n      \"updated_at\" : \"2018-04-18T12:31:52.304Z\",\n      \"client_identifier\" : \"9b47fc8b-e885-460f-95c0-fc346064a9f4\",\n      \"container\" : {\n        \"number\" : \"TCNU9818966\",\n        \"id\" : 914126\n      },\n      \"id\" : 59728\n    },\n    {\n      \"client_identifier\" : \"d2866ad7-f429-40e6-ac61-eca7b23da139\",\n      \"updated_at\" : \"2018-04-18T12:48:19.668Z\",\n      \"id\" : 59735,\n      \"container\" : {\n        \"number\" : \"TCNU9818966\",\n        \"id\" : 914126\n      },\n      \"items_count\" : 2,\n      \"bill_of_lading\" : {\n        \"number\" : \"ZIMUPAN2018926\",\n        \"id\" : 232224\n      },\n      \"created_at\" : \"2018-04-18T12:48:19.668Z\"\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/packing_lists/create","name":"create","apis":[{"api_url":"/api/v1/bill_of_ladings/:bill_of_lading_number/packing_lists.json","http_method":"POST","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"bill_of_lading_number","full_name":"bill_of_lading_number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_number","full_name":"container_number","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"client_identifier","full_name":"client_identifier","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"packing_list","full_name":"packing_list","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/bill_of_ladings/:bill_of_lading_number/packing_lists.json\" -d '{ \"container_number\": \"CONTNUMBER\", packing_list: { \"client_identifier\": \"identifier\" }}' -X POST -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n","Example Payload:\n{\n  \"container_number\": \"CONTNUMBER\",\n  \"packing_list\": {\n    \"client_identifier\": \"ABC12312\"\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/packing_lists/destroy","name":"destroy","apis":[{"api_url":"/api/v1/bill_of_ladings/:bill_of_lading_number/packing_lists/:client_identifier.json","http_method":"DELETE","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[],"returns":[],"examples":[],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"pre_advices":{"doc_url":"/api/v1/documentation/1.0/pre_advices","id":"pre_advices","api_url":"/api/v1","name":"Pre_advices","short_description":"This resource allows you to view, create and delete pre-advices in Octopi","full_description":"\n\u003cp\u003eThis resource allows clients to view, create and delete pre-advices in Octopi\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/pre_advices/show","name":"show","apis":[{"api_url":"/api/v1/pre_advices/:advice_number","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eReturns information about a specific pre-advice.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"advice_number","full_name":"advice_number","description":"\n\u003cp\u003eThe pre-advice’s number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/pre_advices/OCTO231234.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"'\n","{\n  \"advice_number\": \"OCTO231234\",\n  \"truck\": \"TRA123\",\n  \"truck_driver\": {\n    \"id\": 1234,\n    \"fullname\": \"John Doe\",\n    \"license_number\": \"JNA321\",\n    \"twic\": \"\",\n    \"number\": \"633353\",\n    \"active\": true,\n    \"date_of_birth\": null,\n    \"telephone_number\": null,\n    \"email\": null,\n    \"remarks\": null,\n    \"trucking_company\": \"FAST TRUCKS, INC.\",\n    \"allowed_until\": null,\n    \"created_at\": \"2017-09-15T15:47:12Z\",\n    \"updated_at\": \"2023-09-15T15:47:12Z\"\n  },\n  \"purposes\": [\n    {\n      \"purpose_type\": \"drop_off\",\n      \"cargo\": \"NYKU438609\",\n      \"booking\": \"BOOK123\",\n      \"bill_of_lading\": \"BOL123\"\n    },\n    {\n      \"purpose_type\": \"pick_up\",\n      \"cargo\": \"TEMU714171\",\n      \"booking\": \"BOOK321\",\n      \"bill_of_lading\": \"BOL321\"\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/pre_advices/create","name":"create","apis":[{"api_url":"/api/v1/pre_advices.json","http_method":"POST","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eCreates a pre-advice\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"advice_number","full_name":"advice_number","description":"\n\u003cp\u003eUnique advice number. Should be at least 4 characters. Octopi will auto-generate one if not provided.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck","full_name":"truck","description":"\n\u003cp\u003eTruck’s license plate number. Required only if your organization requires it.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_driver_id","full_name":"truck_driver_id","description":"\n\u003cp\u003eTruck driver ID. If this parameter is present, the truck_driver parameter will be ignored.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_driver","full_name":"truck_driver","description":"\n\u003cp\u003eTruck driver’s license number. If the truck_driver_id parameter is present, this will be ignored.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"trucking_company","full_name":"trucking_company","description":"\n\u003cp\u003eThe trucking company for this pre-advice. If a truck is present, then the trucking company in this parameter must match it. Similarly, if a truck driver is present, the driver’s company must match this trucking company.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"comments","full_name":"comments","description":"\n\u003cp\u003eComments for this pre-advice.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"purposes","full_name":"purposes","description":"\n\u003cp\u003eTruck visit’s purposes (multiple purposes allowed).\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an Array of nested elements","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"purpose_type","full_name":"purposes[purpose_type]","description":"\n\u003cp\u003ePurpose type. Must be one of ‘drop off’, ‘drop_off’, ‘pick up’ or ‘pick_up’.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"cargo","full_name":"purposes[cargo]","description":"\n\u003cp\u003eCargo details\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"cargo_type","full_name":"purposes[cargo][cargo_type]","description":"\n\u003cp\u003eType of Cargo. Must be one of ‘container’, ‘chassis’, ‘general cargo’ or ‘general_cargo’.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_number","full_name":"purposes[cargo][container_number]","description":"\n\u003cp\u003eContainer number. Required if cargo_type is ‘container’ and if the purpose is not for pick-up.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_type","full_name":"purposes[cargo][container_type]","description":"\n\u003cp\u003eType of Container (eg 20DV). Required when creating a new container.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_status","full_name":"purposes[cargo][container_status]","description":"\n\u003cp\u003eStatus of container (full/empty). Required if cargo_type is ‘container’\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"chassis_number","full_name":"purposes[cargo][chassis_number]","description":"\n\u003cp\u003eActive Chassis number. Required if cargo_type is ‘chassis’.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_line","full_name":"purposes[cargo][shipping_line]","description":"\n\u003cp\u003eShipping line code. Required when creating a new container if the purpose is not for pick-up empty.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"goods","full_name":"purposes[cargo][goods]","description":"\n\u003cp\u003eGoods description.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_usage","full_name":"purposes[cargo][container_usage]","description":"\n\u003cp\u003eThe container’s usage.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eexport\u003c/code\u003e, \u003ccode\u003eimport\u003c/code\u003e, \u003ccode\u003eunknown\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"weight","full_name":"purposes[cargo][weight]","description":"\n\u003cp\u003eTotal weight of the container in KGs.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}]},{"name":"booking","full_name":"purposes[booking]","description":"\n\u003cp\u003eA valid booking number to drop off a full container or pick up an empty.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"bill_of_lading","full_name":"purposes[bill_of_lading]","description":"\n\u003cp\u003eA valid Bill of Lading number to pick up a full container if your organization validates BOLs.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"delivery_order","full_name":"purposes[delivery_order]","description":"\n\u003cp\u003eA valid delivery order number to pick up general cargo\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"interchange","full_name":"purposes[interchange]","description":"\n\u003cp\u003eInterchange details\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"seals","full_name":"purposes[interchange][seals]","description":"\n\u003cp\u003eComma separated values of seals on the container\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"weight","full_name":"purposes[interchange][weight]","description":"\n\u003cp\u003eTotal weight of the container in KGs.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}]}]},{"name":"expected_at","full_name":"expected_at","description":"\n\u003cp\u003eThe date and time at which you expect a truck visit to use this pre advice, in ISO 8601 format (Eg 2023-04-13T14:30:00Z)\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl --location --request POST 'https://app.octopi.co/api/v1/pre_advices.json'     --header 'Authorization: Bearer token_value'     --header 'Content-Type: application/json'     --data-raw '{\n  \"advice_number\": \"ADVICE1234\",\n  \"truck\": \"TRA123\",\n  \"truck_driver\": \"JD231\",\n  \"trucking_company\": \"Blue Trucks\",\n  \"comments\": \"On time\",\n  \"expected_at\": \"2023-04-13T14:30:00Z\",\n  \"purposes\": [\n    {\n      \"purpose_type\": \"drop_off\",\n      \"cargo\": {\n        \"cargo_type\": \"container\",\n        \"container_number\": \"NYKU438409\",\n        \"container_type\": \"20DV\",\n        \"container_status\": \"full\",\n        \"weight\": 12000,\n        \"container_usage\": \"export\",\n        \"goods\": \"play stations\",\n        \"shipping_line\": \"MAERSK\"\n      },\n      \"booking\": \"BOOK1234\",\n      \"bill_of_lading\": \"BOL1234\",\n      \"delivery_order\": \"DO1234\",\n      \"interchange\":{\n        \"seals\": \"SEAL1,SEAL2,SEAL3\",\n        \"weight\": 12000\n      }\n    }\n  ]\n}'\n","{\n  \"advice_number\": \"ADVICE1234\",\n  \"truck\": \"TRA123\",\n  \"truck_driver\": {\n    \"id\": 1234,\n    \"fullname\": \"John Doe\",\n    \"license_number\": \"JD231\",\n    \"twic\": \"\",\n    \"number\": \"JD231\",\n    \"active\": true,\n    \"date_of_birth\": null,\n    \"telephone_number\": null,\n    \"email\": null,\n    \"remarks\": null,\n    \"trucking_company\": \"Blue Trucks\",\n    \"allowed_until\": null,\n    \"created_at\": \"2023-09-15T15:47:12Z\",\n    \"updated_at\": \"2023-09-15T15:47:12Z\"\n  },\n  \"comments\": \"On time\",\n  \"expected_at\": \"2023-04-13T14:30:00Z\",\n  \"purposes\": [\n    {\n      \"purpose_type\": \"drop_off\",\n      \"cargo\": \"NYKU438409\",\n      \"booking\": \"BOOK1234\",\n      \"bill_of_lading\": \"BOL1234\",\n      \"delivery_order\": \"DO1234\",\n      \"interchange\":{\n        \"seals\": \"SEAL1,SEAL2,SEAL3\",\n        \"weight\": 12000\n      }\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/pre_advices/destroy","name":"destroy","apis":[{"api_url":"/api/v1/pre_advices/:advice_number","http_method":"DELETE","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to delete a pre-advice.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"advice_number","full_name":"advice_number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/pre_advices/OCT1234.json\" -X DELETE -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n  \"advice_number\": \"OCT1234\",\n  \"truck\": \"TRA123\",\n  \"truck_driver\": {\n    \"id\": 1234,\n    \"fullname\": \"John Doe\",\n    \"license_number\": \"JD231\",\n    \"twic\": \"\",\n    \"number\": \"JD231\",\n    \"active\": true,\n    \"date_of_birth\": null,\n    \"telephone_number\": null,\n    \"email\": null,\n    \"remarks\": null,\n    \"trucking_company\": \"Blue Trucks\",\n    \"allowed_until\": null,\n    \"created_at\": \"2023-09-15T15:47:12Z\",\n    \"updated_at\": \"2023-09-15T15:47:12Z\"\n  },\n  \"purposes\": []\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"service_orders":{"doc_url":"/api/v1/documentation/1.0/service_orders","id":"service_orders","api_url":"/api/v1","name":"Service_orders","short_description":"This resource allows you to interact with service orders in Octopi.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/service_orders/index","name":"index","apis":[{"api_url":"/api/v1/service_orders.json","http_method":"GET","short_description":"Returns all the service orders present in Octopi.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"order_number","full_name":"order_number","description":"\n\u003cp\u003eThe unique service order number given while creating one. You can do partial string search as well.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"due_at","full_name":"due_at","description":"\n\u003cp\u003eThe date and time before which you want to fulfil the order, in ISO 8601 format (Eg. 2023-08-18T14:00:00Z) in UTC.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"status","full_name":"status","description":"\n\u003cp\u003eThe current status of the service order.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003epending\u003c/code\u003e, \u003ccode\u003ecompleted\u003c/code\u003e, \u003ccode\u003ecancelled\u003c/code\u003e, \u003ccode\u003ein_progress\u003c/code\u003e, \u003ccode\u003epartially_completed\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"cargo_type","full_name":"cargo_type","description":"\n\u003cp\u003econtainer, breakbulk, or vehicle\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003econtainer\u003c/code\u003e, \u003ccode\u003evehicle\u003c/code\u003e, \u003ccode\u003ebreakbulk\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_id","full_name":"container_id","description":"\n\u003cp\u003eOctopi ID of any container.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"vin","full_name":"vin","description":"\n\u003cp\u003eVehicle Identification Number (VIN) for filtering vehicle cargo types. Supports partial matching.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of service orders to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/service_orders' \\\n  -X 'GET' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n","{\n  \"total_count\": 28,\n  \"service_orders\": [\n    {\n      \"id\": 41,\n      \"order_number\": \"API_TEST_002\",\n      \"due_at\": \"2024-04-30T20:00:00-04:00\",\n      \"cargo_type\": \"vehicle\",\n      \"status\": \"cancelled\",\n      \"comment\": \"Latest Comment\",\n      \"created_at\": \"2024-01-29T05:33:55-05:00\",\n      \"ordered_by\": \"System\",\n      \"service_order_items\": [\n        {\n          \"id\": 74,\n          \"container_id\": 4337700,\n          \"status\": \"cancelled\",\n          \"cancelled_at\": \"2024-01-29T05:50:02-05:00\",\n          \"cancelled_by\": \"System\",\n          \"cancellation_reason\": \"Lorem Ipsum\",\n          \"container_number\": \"0317933\",\n          \"vin\": \"1HGBH41JXMN109186\",\n          \"service_type\": \"custom\",\n          \"service_id\": 721,\n          \"service_name\": \"Repainting\"\n        },\n        {\n          \"id\": 75,\n          \"container_id\": 4337700,\n          \"status\": \"cancelled\",\n          \"cancelled_at\": \"2024-01-29T05:50:02-05:00\",\n          \"cancelled_by\": \"System\",\n          \"cancellation_reason\": \"Lorem Ipsum\",\n          \"container_number\": \"0317933\",\n          \"vin\": \"1HGBH41JXMN109186\",\n          \"service_type\": \"default\",\n          \"service_id\": \"cleaning\",\n          \"service_name\": \"Cleaning (Default)\"\n        }\n      ]\n    },\n    {\n      \"id\": 39,\n      \"order_number\": \"API_TEST_001\",\n      \"due_at\": \"2024-02-19T19:00:00-05:00\",\n      \"cargo_type\": \"container\",\n      \"status\": \"cancelled\",\n      \"comment\": \"New SO\",\n      \"created_at\": \"2024-01-25T13:44:45-05:00\",\n      \"ordered_by\": \"System\",\n      \"service_order_items\": [\n        {\n          \"id\": 65,\n          \"container_id\": 231596,\n          \"status\": \"cancelled\",\n          \"cancelled_at\": \"2024-01-25T13:45:59-05:00\",\n          \"cancelled_by\": \"System\",\n          \"cancellation_reason\": \"Lorem Ipsum\",\n          \"container_number\": \"278434\",\n          \"service_type\": \"custom\",\n          \"service_id\": 723,\n          \"service_name\": \"Color Painting\"\n        },\n        {\n          \"id\": 66,\n          \"container_id\": 231596,\n          \"status\": \"cancelled\",\n          \"cancelled_at\": \"2024-01-25T13:45:59-05:00\",\n          \"cancelled_by\": \"System\",\n          \"cancellation_reason\": \"Lorem Ipsum\",\n          \"container_number\": \"278434\",\n          \"service_type\": \"default\",\n          \"service_id\": \"reseal\",\n          \"service_name\": \"Reseal (Default)\"\n        },\n        {\n          \"id\": 71,\n          \"container_id\": 28776,\n          \"status\": \"pending\",\n          \"container_number\": \"ABCU1236033\",\n          \"service_type\": \"default\",\n          \"service_id\": \"inspection\",\n          \"service_name\": \"Inspection (Default)\"\n        },\n        {\n          \"id\": 72,\n          \"container_id\": 4337700,\n          \"status\": \"cancelled\",\n          \"cancelled_at\": \"2024-01-29T05:05:23-05:00\",\n          \"cancelled_by\": \"System\",\n          \"cancellation_reason\": \"Lorem Ipsum\",\n          \"container_number\": \"0317933\",\n          \"service_type\": \"default\",\n          \"service_id\": \"inspection\",\n          \"service_name\": \"Inspection (Default)\"\n        }\n      ]\n    },\n    {\n      \"id\": 37,\n      \"order_number\": \"SO123456\",\n      \"due_at\": \"2024-01-19T19:00:00-05:00\",\n      \"cargo_type\": \"container\",\n      \"status\": \"pending\",\n      \"comment\": \"New SO\",\n      \"created_at\": \"2024-01-09T06:52:28-05:00\",\n      \"ordered_by\": \"System\",\n      \"service_order_items\": [\n        {\n          \"id\": 61,\n          \"container_id\": 4337700,\n          \"status\": \"pending\",\n          \"container_number\": \"0317933\",\n          \"service_type\": \"default\",\n          \"service_id\": \"cleaning\",\n          \"service_name\": \"Cleaning (Default)\"\n        },\n        {\n          \"id\": 62,\n          \"container_id\": 95951,\n          \"status\": \"pending\",\n          \"container_number\": \"1TRUCKMACKDR332724\",\n          \"service_type\": \"default\",\n          \"service_id\": \"cleaning\",\n          \"service_name\": \"Cleaning (Default)\"\n        }\n      ]\n    },\n    {\n      \"id\": 35,\n      \"order_number\": \"SO120240104014\",\n      \"due_at\": \"2024-01-20T01:30:00-05:00\",\n      \"cargo_type\": \"container\",\n      \"status\": \"pending\",\n      \"comment\": \"\",\n      \"created_at\": \"2024-01-04T01:30:46-05:00\",\n      \"ordered_by\": \"Kamalraj Matheswaran\",\n      \"service_order_items\": [\n        {\n          \"id\": 59,\n          \"container_id\": 2538488,\n          \"status\": \"pending\",\n          \"container_number\": \"3CHASSISDR346929\",\n          \"service_type\": \"default\",\n          \"service_id\": \"scanning\",\n          \"service_name\": \"Scanning (Default)\"\n        }\n      ]\n    },\n    {\n      \"id\": 33,\n      \"order_number\": \"SO120240104013\",\n      \"due_at\": \"2024-01-18T01:30:00-05:00\",\n      \"cargo_type\": \"container\",\n      \"status\": \"pending\",\n      \"comment\": \"\",\n      \"created_at\": \"2024-01-04T01:30:12-05:00\",\n      \"ordered_by\": \"Kamalraj Matheswaran\",\n      \"service_order_items\": [\n        {\n          \"id\": 58,\n          \"container_id\": 40602,\n          \"status\": \"pending\",\n          \"container_number\": \"5298338\",\n          \"service_type\": \"default\",\n          \"service_id\": \"cleaning\",\n          \"service_name\": \"Cleaning (Default)\"\n        }\n      ]\n    },\n    {\n      \"id\": 32,\n      \"order_number\": \"SO120240104012\",\n      \"due_at\": \"2024-01-13T01:29:00-05:00\",\n      \"cargo_type\": \"container\",\n      \"status\": \"pending\",\n      \"comment\": \"\",\n      \"created_at\": \"2024-01-04T01:29:58-05:00\",\n      \"ordered_by\": \"Kamalraj Matheswaran\",\n      \"service_order_items\": [\n        {\n          \"id\": 56,\n          \"container_id\": 45261,\n          \"status\": \"pending\",\n          \"container_number\": \"4556104\",\n          \"service_type\": \"custom\",\n          \"service_id\": 721,\n          \"service_name\": \"Repainting\"\n        },\n        {\n          \"id\": 57,\n          \"container_id\": 45261,\n          \"status\": \"pending\",\n          \"container_number\": \"4556104\",\n          \"service_type\": \"custom\",\n          \"service_id\": 722,\n          \"service_name\": \"Test Service\"\n        }\n      ]\n    },\n    {\n      \"id\": 31,\n      \"order_number\": \"SO120240104011\",\n      \"due_at\": \"2024-01-25T01:29:00-05:00\",\n      \"cargo_type\": \"container\",\n      \"status\": \"pending\",\n      \"comment\": \"\",\n      \"created_at\": \"2024-01-04T01:29:39-05:00\",\n      \"ordered_by\": \"Kamalraj Matheswaran\",\n      \"service_order_items\": [\n        {\n          \"id\": 55,\n          \"container_id\": 1098881,\n          \"status\": \"pending\",\n          \"container_number\": \"4128586\",\n          \"service_type\": \"custom\",\n          \"service_id\": 721,\n          \"service_name\": \"Repainting\"\n        }\n      ]\n    },\n    {\n      \"id\": 30,\n      \"order_number\": \"SO120240104010\",\n      \"due_at\": \"2024-01-10T01:29:00-05:00\",\n      \"cargo_type\": \"container\",\n      \"status\": \"pending\",\n      \"comment\": \"\",\n      \"created_at\": \"2024-01-04T01:29:24-05:00\",\n      \"ordered_by\": \"Kamalraj Matheswaran\",\n      \"service_order_items\": [\n        {\n          \"id\": 54,\n          \"container_id\": 50053,\n          \"status\": \"pending\",\n          \"container_number\": \"4812187\",\n          \"service_type\": \"custom\",\n          \"service_id\": 722,\n          \"service_name\": \"Test Service\"\n        }\n      ]\n    },\n    {\n      \"id\": 29,\n      \"order_number\": \"SO120240104009\",\n      \"due_at\": \"2024-01-19T01:29:00-05:00\",\n      \"cargo_type\": \"container\",\n      \"status\": \"pending\",\n      \"comment\": \"\",\n      \"created_at\": \"2024-01-04T01:29:10-05:00\",\n      \"ordered_by\": \"Kamalraj Matheswaran\",\n      \"service_order_items\": [\n        {\n          \"id\": 53,\n          \"container_id\": 2047032,\n          \"status\": \"pending\",\n          \"container_number\": \"CAIU6889279\",\n          \"service_type\": \"default\",\n          \"service_id\": \"reseal\",\n          \"service_name\": \"Reseal (Default)\"\n        }\n      ]\n    },\n    {\n      \"id\": 27,\n      \"order_number\": \"SO120240104007\",\n      \"due_at\": \"2024-01-24T01:28:00-05:00\",\n      \"cargo_type\": \"breakbulk\",\n      \"status\": \"pending\",\n      \"comment\": \"\",\n      \"created_at\": \"2024-01-04T01:28:34-05:00\",\n      \"ordered_by\": \"Kamalraj Matheswaran\",\n      \"service_order_items\": [\n        {\n          \"id\": 51,\n          \"container_id\": 3190442,\n          \"status\": \"pending\",\n          \"container_description\": \"1030134737/577498 DWV PVC\",\n          \"service_type\": \"custom\",\n          \"service_id\": 722,\n          \"service_name\": \"Test Service\"\n        }\n      ]\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/service_orders/show","name":"show","apis":[{"api_url":"/api/v1/service_orders/:order_number.json","http_method":"GET","short_description":"Returns information about the service order.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"order_number","full_name":"order_number","description":"\n\u003cp\u003eOctopi ID or the unique service order number given while creating one.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/service_orders/ORDER_NUMBER.json' \\\n  -X 'GET' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n","{\n  \"id\": 6,\n  \"order_number\": \"SO120230928001\",\n  \"due_at\": \"2023-09-29T05:32:00-04:00\",\n  \"cargo_type\": \"vehicle\",\n  \"status\": \"partially_completed\",\n  \"comment\": \"\",\n  \"created_at\": \"2023-09-28T05:32:05-04:00\",\n  \"ordered_by\": \"Kamalraj Matheswaran\",\n  \"service_order_items\": [\n    {\n      \"id\": 1,\n      \"container_id\": 2388117,\n      \"status\": \"cancelled\",\n      \"cancelled_at\": \"2023-10-25T03:23:15-04:00\",\n      \"cancelled_by\": \"Kamalraj Matheswaran\",\n      \"cancellation_reason\": \"This page is a service order document for Caribbean Port Services (CPS) with the ID SO120230928001. It provides details of the order including:\\r\\n\\r\\nThe key details are the service order ID, required date, and status. It also lists 3 order items and their service statuses.\",\n      \"container_description\": \"2014 SUBARU FORESTER\",\n      \"vin\": \"JF2SJAGC1EH400056\",\n      \"service_type\": \"custom\",\n      \"service_id\": 723,\n      \"service_name\": \"Color Painting\"\n    },\n    {\n      \"id\": 2,\n      \"container_id\": 2388117,\n      \"status\": \"completed\",\n      \"completed_at\": null,\n      \"completed_by\": \"Kamalraj Matheswaran\",\n      \"container_description\": \"2014 SUBARU FORESTER\",\n      \"vin\": \"JF2SJAGC1EH400056\",\n      \"service_type\": \"custom\",\n      \"service_id\": 722,\n      \"service_name\": \"Test Service\"\n    },\n    {\n      \"id\": 32,\n      \"container_id\": 2333777,\n      \"status\": \"completed\",\n      \"completed_at\": null,\n      \"completed_by\": null,\n      \"container_description\": \"SLAC PERSONAL EFFECTCARGO\",\n      \"service_type\": \"custom\",\n      \"service_id\": 722,\n      \"service_name\": \"Test Service\"\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/service_orders/create","name":"create","apis":[{"api_url":"/api/v1/service_orders.json","http_method":"POST","short_description":"Creates a new service order.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"service_order","full_name":"service_order","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"order_number","full_name":"service_order[order_number]","description":"\n\u003cp\u003eThe unique service order number given while creating one.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"cargo_type","full_name":"service_order[cargo_type]","description":"\n\u003cp\u003econtainer, breakbulk, or vehicle\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003econtainer\u003c/code\u003e, \u003ccode\u003evehicle\u003c/code\u003e, \u003ccode\u003ebreakbulk\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_ids","full_name":"service_order[container_ids]","description":"\n\u003cp\u003eOctopi IDs of containers.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of Integer","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"service_ids","full_name":"service_order[service_ids]","description":"\n\u003cp\u003eArray of default \u0026amp; custom service type IDs provided by Octopi.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of any type","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"due_at","full_name":"service_order[due_at]","description":"\n\u003cp\u003eThe date and time before which you want to fulfil the order, in ISO 8601 format (Eg. 2023-08-18T14:00:00Z) in UTC.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"comment","full_name":"service_order[comment]","description":"\n\u003cp\u003eComments for this order.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/service_orders' \\\n  -X 'POST' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN' \\\n  -d '{\n    \"service_order\": {\n      \"order_number\": \"API_TEST_002\",\n      \"cargo_type\": \"container\",\n      \"due_at\": \"2024-05-20T00:00:00Z\",\n      \"comment\": \"New SO\",\n      \"container_ids\": [\n        4337700\n      ],\n      \"service_ids\": [\n        \"cleaning\",\n        721\n      ]\n    }\n  }'\n","{\n  \"id\": 41,\n  \"order_number\": \"API_TEST_002\",\n  \"due_at\": \"2024-05-19T20:00:00-04:00\",\n  \"cargo_type\": \"container\",\n  \"status\": \"pending\",\n  \"comment\": \"New SO\",\n  \"created_at\": \"2024-01-29T05:33:55-05:00\",\n  \"ordered_by\": \"System\",\n  \"service_order_items\": [\n    {\n      \"id\": 74,\n      \"container_id\": 4337700,\n      \"status\": \"pending\",\n      \"container_number\": \"0317933\",\n      \"vin\": \"1HGBH41JXMN109186\",\n      \"service_type\": \"custom\",\n      \"service_id\": 721,\n      \"service_name\": \"Repainting\"\n    },\n    {\n      \"id\": 75,\n      \"container_id\": 4337700,\n      \"status\": \"pending\",\n      \"container_number\": \"0317933\",\n      \"vin\": \"1HGBH41JXMN109186\",\n      \"service_type\": \"default\",\n      \"service_id\": \"cleaning\",\n      \"service_name\": \"Cleaning (Default)\"\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/service_orders/update","name":"update","apis":[{"api_url":"/api/v1/service_orders/:order_number.json","http_method":"PUT","short_description":"Updates an existing service order.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"order_number","full_name":"order_number","description":"\n\u003cp\u003eOctopi ID or the unique service order number given while creating one.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"service_order","full_name":"service_order","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"order_number","full_name":"service_order[order_number]","description":"\n\u003cp\u003eThe unique service order number given while creating one.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"due_at","full_name":"service_order[due_at]","description":"\n\u003cp\u003eThe date and time before which you want to fulfil the order, in ISO 8601 format (Eg. 2023-08-18T14:00:00Z) in UTC.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"comment","full_name":"service_order[comment]","description":"\n\u003cp\u003eComments for this order.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/service_orders/ORDER_NUMBER.json' \\\n  -X 'PUT' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN' \\\n  -d '{ \\\n    \"service_order\": {\n      \"order_number\": \"API_TEST_002_UPDATED\",\n      \"due_at\": \"2024-04-31T00:00:00Z\",\n      \"comment\": \"Updating order number and due at\"\n    }\n  }'\n","{\n  \"id\": 41,\n  \"order_number\": \"API_TEST_002_UPDATED\",\n  \"due_at\": \"2024-04-30T20:00:00-04:00\",\n  \"cargo_type\": \"vehicle\",\n  \"status\": \"pending\",\n  \"comment\": \"Updating order number and due at\",\n  \"created_at\": \"2024-01-29T05:33:55-05:00\",\n  \"ordered_by\": \"System\",\n  \"service_order_items\": [\n    {\n      \"id\": 74,\n      \"container_id\": 4337700,\n      \"status\": \"pending\",\n      \"container_number\": \"0317933\",\n      \"vin\": \"1HGBH41JXMN109186\",\n      \"service_type\": \"custom\",\n      \"service_id\": 721,\n      \"service_name\": \"Repainting\"\n    },\n    {\n      \"id\": 75,\n      \"container_id\": 4337700,\n      \"status\": \"pending\",\n      \"container_number\": \"0317933\",\n      \"vin\": \"1HGBH41JXMN109186\",\n      \"service_type\": \"default\",\n      \"service_id\": \"cleaning\",\n      \"service_name\": \"Cleaning (Default)\"\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/service_orders/destroy","name":"destroy","apis":[{"api_url":"/api/v1/service_orders/:order_number.json","http_method":"DELETE","short_description":"Deletes an existing service order.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"order_number","full_name":"order_number","description":"\n\u003cp\u003eOctopi ID or the unique service order number given while creating one.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/service_orders/ORDER_NUMBER.json' \\\n  -X 'DELETE' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n","{\n  \"id\": 28,\n  \"order_number\": \"SO120240104008\",\n  \"due_at\": \"2024-02-03T01:28:00-05:00\",\n  \"cargo_type\": \"vehicle\",\n  \"status\": \"pending\",\n  \"comment\": \"\",\n  \"created_at\": \"2024-01-04T01:28:56-05:00\",\n  \"ordered_by\": \"Kamalraj Matheswaran\",\n  \"service_order_items\": []\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/service_orders/cancel","name":"cancel","apis":[{"api_url":"/api/v1/service_orders/:order_number/cancel.json","http_method":"PUT","short_description":"Cancels all the incompleted order items under the given service order.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"order_number","full_name":"order_number","description":"\n\u003cp\u003eOctopi ID or the unique service order number given while creating one.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"service_order","full_name":"service_order","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"cancellation_reason","full_name":"service_order[cancellation_reason]","description":"\n\u003cp\u003eThe reason for cancelling the service order.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/service_orders/ORDER_NUMBER/cancel.json' \\\n  -X 'PUT' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN' \\\n  -d '{ \\\n    \"service_order\": {\n      \"cancellation_reason\": \"Lorem Ipsum\"\n    }\n  }'\n","{\n  \"id\": 41,\n  \"order_number\": \"API_TEST_002\",\n  \"due_at\": \"2024-04-30T20:00:00-04:00\",\n  \"cargo_type\": \"vehicle\",\n  \"status\": \"cancelled\",\n  \"comment\": \"Latest Comment\",\n  \"created_at\": \"2024-01-29T05:33:55-05:00\",\n  \"ordered_by\": \"System\",\n  \"service_order_items\": [\n    {\n      \"id\": 74,\n      \"container_id\": 4337700,\n      \"status\": \"cancelled\",\n      \"cancelled_at\": \"2024-01-29T05:50:02-05:00\",\n      \"cancelled_by\": \"System\",\n      \"cancellation_reason\": \"Lorem Ipsum\",\n      \"container_number\": \"0317933\",\n      \"vin\": \"1HGBH41JXMN109186\",\n      \"service_type\": \"custom\",\n      \"service_id\": 721,\n      \"service_name\": \"Repainting\"\n    },\n    {\n      \"id\": 75,\n      \"container_id\": 4337700,\n      \"status\": \"cancelled\",\n      \"cancelled_at\": \"2024-01-29T05:50:02-05:00\",\n      \"cancelled_by\": \"System\",\n      \"cancellation_reason\": \"Lorem Ipsum\",\n      \"container_number\": \"0317933\",\n      \"vin\": \"1HGBH41JXMN109186\",\n      \"service_type\": \"default\",\n      \"service_id\": \"cleaning\",\n      \"service_name\": \"Cleaning (Default)\"\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"shipping_lines":{"doc_url":"/api/v1/documentation/1.0/shipping_lines","id":"shipping_lines","api_url":"/api/v1","name":"Shipping_lines","short_description":"This resource allows you to create, read, and update shipping lines in Octopi.","full_description":"\n\u003cp\u003eThis resource allows you to create, read, update, or delete shipping lines in Octopi.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/shipping_lines/index","name":"index","apis":[{"api_url":"/api/v1/shipping_lines.json","http_method":"GET","short_description":"Returns a list of shipping lines.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint will return the information about all shipping lines.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Resource Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"name","full_name":"name","description":"\n\u003cp\u003eAllows you to filter/search shipping lines by name or part of the name.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"code","full_name":"code","description":"\n\u003cp\u003eAllows you to filter/search shipping lines by full code.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/shipping_lines.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\" -d '{\"name\":\"ship\"}'\n","{\n   \"actions\" : {\n      \"previous\" : {\n         \"url\" : \"https://app.octopi.co/api/v1/shipping_lines?page=0\",\n         \"method\" : \"GET\"\n      },\n      \"next\" : {\n         \"url\" : \"https://app.octopi.co/api/v1/shipping_lines?page=2\",\n         \"method\" : \"GET\"\n      },\n      \"last\" : {\n         \"method\" : \"GET\",\n         \"url\" : \"https://app.octopi.co/api/v1/shipping_lines?page=1\"\n      },\n      \"index\" : {\n         \"url\" : \"https://app.octopi.co/api/v1/shipping_lines\",\n         \"method\" : \"GET\"\n      }\n   },\n   \"shipping_lines\" : [\n      {\n         \"receive_email_alerts_on_container_damages\" : false,\n         \"synonyms\" : [],\n         \"email\" : \"\",\n         \"name\" : \"shipping line name\",\n         \"code\" : \"CODE\",\n         \"dock_receipt_email\" : null,\n         \"contact_person\" : \"\",\n         \"phone\" : \"\",\n         \"vat_number\" : null,\n         \"empty_container_storage_teu_quota\" : null,\n         \"parent\" : {\n            \"id\" : 20,\n            \"carrier_type\" : \"ocean\",\n            \"name\" : \"parent shipping line\",\n            \"synonyms\" : [\n               \"CAT\"\n            ],\n            \"code\" : \"PARENTCODE\"\n         },\n         \"edi_settings\": {\n            \"id\": 64,\n            \"edi_partner\": {\n                \"id\": 22,\n                \"name\": \"SEA\",\n                \"edi_id\": null\n            },\n            \"name\": null,\n            \"entity_edi_id\": null,\n            \"communication_mode\": \"smtp\",\n            \"time_zone\": \"timezone\",\n            \"default_sender_id\": \"\",\n            \"sender_edi_id\": \"\",\n            \"edi_carrier_id\": \"\",\n            \"edi_standard\": \"edifact\"\n         },\n         \"general_ledger_id\" : \"SL22\",\n         \"id\" : 22,\n         \"address\" : \"address\",\n         \"carrier_type\" : \"ocean\"\n      }\n   ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/shipping_lines/show","name":"show","apis":[{"api_url":"/api/v1/shipping_lines/:id","http_method":"GET","short_description":"Returns information about a shipping line.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint will return the information about a shipping line.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Resource Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"\n\u003cp\u003eYou must pass the shipping line’s Octopi ID or shipping line’s code.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/shipping_lines/:id\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"shipping_line\" : {\n      \"address\" : \"address\",\n      \"carrier_type\" : \"ocean\",\n      \"name\" : \"shipping line name\",\n      \"id\" : 22,\n      \"email\" : \"\",\n      \"contact_person\" : \"\",\n      \"phone\" : \"\",\n      \"empty_container_storage_teu_quota\" : null,\n      \"parent\" : {\n         \"carrier_type\" : \"ocean\",\n         \"synonyms\" : [\n            \"CAT\",\n            \"CLA\"\n         ],\n         \"name\" : \"parent shipping line\",\n         \"id\" : 20,\n         \"code\" : \"PARENTCODE\"\n      },\n      \"edi_settings\": {\n         \"id\": 64,\n         \"edi_partner\": {\n             \"id\": 22,\n             \"name\": \"SEA\",\n             \"edi_id\": null\n         },\n         \"name\": null,\n         \"entity_edi_id\": null,\n         \"communication_mode\": \"smtp\",\n         \"time_zone\": \"timezone\",\n         \"default_sender_id\": \"\",\n         \"sender_edi_id\": \"\",\n         \"edi_carrier_id\": \"\",\n         \"edi_standard\": \"edifact\"\n      },\n      \"vat_number\" : null,\n      \"receive_email_alerts_on_container_damages\" : false,\n      \"synonyms\" : [],\n      \"dock_receipt_email\" : null,\n      \"general_ledger_id\" : \"SL22\",\n      \"code\" : \"CODE\"\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/shipping_lines/create","name":"create","apis":[{"api_url":"/api/v1/shipping_lines.json","http_method":"POST","short_description":"Creates a new shipping line.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to create a new shipping line.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Resource Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"shipping_line","full_name":"shipping_line","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"code","full_name":"shipping_line[code]","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"carrier_type","full_name":"shipping_line[carrier_type]","description":"\n\u003cp\u003ePass carrier type among ocean, rail, air, or truck.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"address","full_name":"shipping_line[address]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"parent_id","full_name":"shipping_line[parent_id]","description":"\n\u003cp\u003eIf there is a parent shipping line, pass it’s Octopi ID.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"email","full_name":"shipping_line[email]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"contact_person","full_name":"shipping_line[contact_person]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"phone","full_name":"shipping_line[phone]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"receive_email_alerts_on_container_damages","full_name":"shipping_line[receive_email_alerts_on_container_damages]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"vat_number","full_name":"shipping_line[vat_number]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"general_ledger_id","full_name":"shipping_line[general_ledger_id]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"dock_receipt_email","full_name":"shipping_line[dock_receipt_email]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"empty_container_storage_teu_quota","full_name":"shipping_line[empty_container_storage_teu_quota]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"synonyms","full_name":"shipping_line[synonyms]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of any type","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/shipping_lines.json\" -X POST -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\" -d '{\"shipping_line\" : {\"name\" : \"shipping line name\", \"code\" : \"CODE\", \"email\" : \"email@gmail.com\", \"general_ledger_id\" : \"M001\", \"address\" : \"address\"}}'\n","{\n   \"shipping_line\" : {\n      \"contact_person\" : \"contact_person\",\n      \"dock_receipt_email\" : null,\n      \"id\" : 1271,\n      \"empty_container_storage_teu_quota\" : null,\n      \"address\" : \"address\",\n      \"receive_email_alerts_on_container_damages\" : false,\n      \"carrier_type\" : \"ocean\",\n      \"code\" : \"CODE\",\n      \"email\" : \"email@gmail.com\",\n      \"phone\" : null,\n      \"general_ledger_id\" : \"M001\",\n      \"vat_number\" : null,\n      \"name\" : \"shipping line name\",\n      \"synonyms\" : []\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/shipping_lines/update","name":"update","apis":[{"api_url":"/api/v1/shipping_lines/:id","http_method":"PUT","short_description":"Updates a shipping line record.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to update a shipping line.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Resource Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_line","full_name":"shipping_line","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"code","full_name":"shipping_line[code]","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"carrier_type","full_name":"shipping_line[carrier_type]","description":"\n\u003cp\u003ePass carrier type among ocean, rail, air, or truck.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"address","full_name":"shipping_line[address]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"parent_id","full_name":"shipping_line[parent_id]","description":"\n\u003cp\u003eIf there is a parent shipping line, pass it’s Octopi ID.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"email","full_name":"shipping_line[email]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"contact_person","full_name":"shipping_line[contact_person]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"phone","full_name":"shipping_line[phone]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"receive_email_alerts_on_container_damages","full_name":"shipping_line[receive_email_alerts_on_container_damages]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"vat_number","full_name":"shipping_line[vat_number]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"general_ledger_id","full_name":"shipping_line[general_ledger_id]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"dock_receipt_email","full_name":"shipping_line[dock_receipt_email]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"empty_container_storage_teu_quota","full_name":"shipping_line[empty_container_storage_teu_quota]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"synonyms","full_name":"shipping_line[synonyms]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of any type","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/shipping_lines/:id\" -X PUT -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\" -d '{\"shipping_line\" : {\"name\" : \"new shipping line name\", \"code\" : \"NEWCODE\", \"email\" : \"email@gmail.com\", \"general_ledger_id\" : \"M001\", \"address\" : \"address\"}}'\n","{\n   \"shipping_line\" : {\n      \"code\" : \"NEWCODE\",\n      \"contact_person\" : \"contact_person\",\n      \"synonyms\" : [],\n      \"general_ledger_id\" : \"M001\",\n      \"carrier_type\" : \"ocean\",\n      \"name\" : \"new shipping line name\",\n      \"phone\" : null,\n      \"dock_receipt_email\" : null,\n      \"email\" : \"email@gmail.com\",\n      \"receive_email_alerts_on_container_damages\" : false,\n      \"address\" : \"address\",\n      \"vat_number\" : null,\n      \"empty_container_storage_teu_quota\" : null,\n      \"edi_settings\": {\n         \"id\": 64,\n         \"edi_partner\": {\n             \"id\": 22,\n             \"name\": \"SEA\",\n             \"edi_id\": null\n         },\n         \"name\": null,\n         \"entity_edi_id\": null,\n         \"communication_mode\": \"smtp\",\n         \"time_zone\": \"timezone\",\n         \"default_sender_id\": \"\",\n         \"sender_edi_id\": \"\",\n         \"edi_carrier_id\": \"\",\n         \"edi_standard\": \"edifact\"\n      },\n      \"id\" : 1271\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"ships":{"doc_url":"/api/v1/documentation/1.0/ships","id":"ships","api_url":"/api/v1","name":"Ships","short_description":"This resource allows you to fetch information about vessels.","full_description":"\n\u003cp\u003eThis API allows you to fetch information about vessels in Octopi. It returns the basic info about the vessel. If the vessel recently completed a voyage, then it also returns information about that last voyage.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/ships/show","name":"show","apis":[{"api_url":"/api/v1/vessels/:name","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eReturns information about the vessel and the last voyage (if present)\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":500,"description":"Server crashed.","metadata":null}],"params":[{"name":"name","full_name":"name","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/vessels/ADD VESSEL NAME HERE.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n","  {\n   \"vessel\" : {\n      \"gross_tonnage\" : 9957,\n      \"call_sign\" : \"6YSO4\",\n      \"imo_number\" : \"9403451\",\n      \"length_overall\" : \"148m × 23.25m\",\n      \"actions\" : {\n         \"show\" : {\n            \"method\" : \"GET\",\n            \"url\" : \"https://app.octopi.co/api/v1/vessels/CFS%20Paceno.json\"\n         }\n      },\n      \"name\" : \"CFS Paceno\"\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"truck_drivers":{"doc_url":"/api/v1/documentation/1.0/truck_drivers","id":"truck_drivers","api_url":"/api/v1","name":"Truck_drivers","short_description":"This resource allows you to find, create, update or list truck drivers within Octopi.","full_description":"\n\u003cp\u003eThis resource lets clients find, create, update or list truck drivers truck driver information.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/truck_drivers/index","name":"index","apis":[{"api_url":"/api/v1/truck_drivers.json","http_method":"GET","short_description":"Returns a list of truck drivers.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Resource Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"firstname","full_name":"firstname","description":"\n\u003cp\u003eFilter truck drivers by first name\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"lastname","full_name":"lastname","description":"\n\u003cp\u003eFilter truck drivers by last name\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"twic","full_name":"twic","description":"\n\u003cp\u003eFilter truck drivers by TWIC\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"license_number","full_name":"license_number","description":"\n\u003cp\u003eFilter truck drivers by license number\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"number","full_name":"number","description":"\n\u003cp\u003eFilter truck drivers by number\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"email","full_name":"email","description":"\n\u003cp\u003eFilter truck drivers by email\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"active","full_name":"active","description":"\n\u003cp\u003eIf set to true, will return active truck drivers. If set to false, it will return inactive truck drivers. If this parameter is absent, Octopi will return both active and inactive truck drivers.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/truck_drivers.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\" -d '{\"firstname\":\"John\", \"lastname\":\"Doe\"}'\n","{\n  \"truck_drivers\" : [\n    {\n      \"id\": 123,\n      \"fullname\": \"Adena Bergnaum\",\n      \"license_number\": \"ABC529\",\n      \"twic\": \"\",\n      \"number\": \"56\",\n      \"active\": true,\n      \"date_of_birth\": null,\n      \"telephone_number\": \"\",\n      \"email\": \"adena.bergnaum@gmail.com\",\n      \"remarks\": \"Best driver in town\",\n      \"trucking_company\": \"Blue Trucks\",\n      \"allowed_until\": null,\n      \"created_at\": \"2020-05-01T11:33:23Z\",\n      \"updated_at\": \"2023-08-10T12:36:03Z\"\n    },\n    {\n      \"id\": 456,\n      \"fullname\": \"Roman Mraz\",\n      \"license_number\": \"DEF428\",\n      \"twic\": null,\n      \"number\": \"57,\n      \"active\": true,\n      \"date_of_birth\": null,\n      \"telephone_number\": null,\n      \"email\": \"roman.mraz@gmail.com\",\n      \"remarks\": null,\n      \"trucking_company\": \"Red Trucks\",\n      \"allowed_until\": null,\n      \"created_at\": \"2019-01-28T12:23:49Z\",\n      \"updated_at\": \"2023-01-28T12:23:49Z\"\n    },\n  ],\n  \"actions\" : {\n    \"index\" : {\n      \"url\" : \"https://app.octopi.co/api/v1/truck_drivers\",\n      \"method\" : \"GET\"\n    },\n    \"next\" : {\n      \"url\" : \"https://app.octopi.co/api/v1/truck_drivers.json?page=2\",\n      \"method\" : \"GET\"\n    },\n    \"previous\" : {\n      \"method\" : \"GET\",\n      \"url\" : \"https://app.octopi.co/api/v1/truck_drivers.json?page=0\"\n    },\n    \"last\" : {\n      \"method\" : \"GET\",\n      \"url\" : \"https://app.octopi.co/api/v1/truck_drivers.json?page=3\"\n    }\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/truck_drivers/create","name":"create","apis":[{"api_url":"/api/v1/truck_drivers.json","http_method":"POST","short_description":"Create a new truck driver.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eCreates a new truck driver.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Resource Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"first_name","full_name":"first_name","description":"\n\u003cp\u003eThe first name of the driver.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"last_name","full_name":"last_name","description":"\n\u003cp\u003eThe last name of the driver.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"license_number","full_name":"license_number","description":"\n\u003cp\u003eThe license number of the driver or N/A if not available.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"number","full_name":"number","description":"\n\u003cp\u003eA unique number used by the terminal to identify the driver.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"trucking_company_name","full_name":"trucking_company_name","description":"\n\u003cp\u003eName of the trucking company for the driver.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/truck_drivers.json\" -d '{\"truck_driver\": { \"number\": \"1231NU78\", \"first_name\": \"Juan\", \"last_name\": \"Torres\", \"license_number\": \"N/A\" }}' -X POST -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/truck_drivers/update","name":"update","apis":[{"api_url":"/api/v1/truck_drivers/:number.json","http_method":"PATCH","short_description":"Update a truck driver's information.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eUpdates a truck driver record\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Resource Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"first_name","full_name":"first_name","description":"\n\u003cp\u003eThe first name of the driver.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"last_name","full_name":"last_name","description":"\n\u003cp\u003eThe last name of the driver.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"license_number","full_name":"license_number","description":"\n\u003cp\u003eThe license number of the driver or N/A if not available.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"number","full_name":"number","description":"\n\u003cp\u003eA unique number used by the terminal to identify the driver.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"trucking_company_name","full_name":"trucking_company_name","description":"\n\u003cp\u003eName of the trucking company for the driver.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/truck_drivers/:number.json\" -d '{\"truck_driver\": { \"first_name\": \"Juan\", \"last_name\": \"Torres\", \"license_number\": \"new_license_number\" }}' -X PATCH -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/truck_drivers/show","name":"show","apis":[{"api_url":"/api/v1/truck_drivers/:number.json","http_method":"GET","short_description":"Show a truck driver's information.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eReturns data for a driver. The number used in the URL path can be the truck driver’s license number or truck driver number.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Resource Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/truck_drivers/1234.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"truck_visits":{"doc_url":"/api/v1/documentation/1.0/truck_visits","id":"truck_visits","api_url":"/api/v1","name":"Truck_visits","short_description":"This resource allows you to view, create, or delete truck visits within Octopi.","full_description":"\n\u003cp\u003eThis resource allows clients to view or manipulate truck visits within Ocotpi.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/truck_visits/index","name":"index","apis":[{"api_url":"/api/v1/truck_visits.json","http_method":"GET","short_description":"Gets a list of truck visits.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to fetch truck visits.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"truck_id","full_name":"truck_id","description":"\n\u003cp\u003eFilter truck visits associated with a truck. You can pass the truck Octopi ID or the truck license plate.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_driver_id","full_name":"truck_driver_id","description":"\n\u003cp\u003eFilter truck visits associated with a truck driver. You must pass the truck driver Octopi ID.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"trucking_company_id","full_name":"trucking_company_id","description":"\n\u003cp\u003eFilter truck visits associated with a trucking company. You can pass the trucking company Octopi ID or the trucking company code.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"gate_ids","full_name":"gate_ids","description":"\n\u003cp\u003eFilter truck visits associated with gates. You must pass an array of gate Octopi IDs.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of any type","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"user_id","full_name":"user_id","description":"\n\u003cp\u003eFilter truck visits associated with a user. You must pass the user’s Octopi ID.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_id","full_name":"container_id","description":"\n\u003cp\u003eFilter truck visits associated with a container. You can pass the container Octopi ID or the container number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"chassis_id","full_name":"chassis_id","description":"\n\u003cp\u003eFilter truck visits associated with a chassis. You can pass the chassis Octopi ID or the chassis number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"genset_id","full_name":"genset_id","description":"\n\u003cp\u003eFilter truck visits associated with a genset. You can pass the genset Octopi ID or the genset number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"start_date","full_name":"start_date","description":"\n\u003cp\u003eFilter truck visits for which gate in occurred after the start date. Must be formatted as YYYY-MM-DD.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"end_date","full_name":"end_date","description":"\n\u003cp\u003eFilter truck visits for which gate in occurred before the end date. Must be formatted as YYYY-MM-DD.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/truck_visits.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\" -d '{\"trucking_company_id\":118,\"truck_id\":3274,\"truck_driver_id\":23801,\"start_date\":\"2020-11-25\",\"end_date\":\"2020-11-26\"}'\n","{\n  \"truck_visits\": [\n      {\n          \"id\": 1164576,\n          \"truck\": {\n              \"id\": 3274,\n              \"license_plate\": \"JA1111\",\n              \"number\": \"428\",\n              \"trucking_company_id\": 118,\n              \"active\": true,\n              \"allowed_until\": null\n          },\n          \"truck_driver\": {\n              \"id\": 23801,\n              \"fullname\": \"John Doe\",\n              \"license_number\": \"611574\",\n              \"twic\": \"\",\n              \"number\": \"633353\",\n              \"active\": true,\n              \"date_of_birth\": null,\n              \"telephone_number\": null,\n              \"email\": null,\n              \"remarks\": null,\n              \"trucking_company\": \"TruckingCo1\",\n              \"allowed_until\": null,\n              \"created_at\": \"2017-09-15T15:47:12Z\",\n              \"updated_at\": \"2023-09-15T15:47:12Z\"\n          },\n          \"gated_in_at\": \"2020-11-25T22:47:55Z\",\n          \"gated_out_at\": \"2020-11-25T23:14:55Z\",\n          \"trucking_company\": {\n              \"id\": 118,\n              \"name\": \"MARTAINER, INC.\",\n              \"code\": null\n          },\n          \"gate\": {\n              \"id\": 108,\n              \"name\": \"South Gate\"\n          },\n          \"gate_in_user\": {\n              \"id\": 709,\n              \"email\": \"email@gmail.com\",\n              \"firstname\": \"firstname\",\n              \"lastname\": \"lastname\",\n              \"name\": \"Firstname Lastname\"\n          },\n          \"gate_out_user\": {\n              \"id\": 401,\n              \"email\": \"email2@gmail.com\",\n              \"firstname\": \"firstname\",\n              \"lastname\": \"lastname\",\n              \"name\": \"Firstname Lastname\"\n          },\n          \"interchanges\": [\n              {\n                  \"id\": 1358853,\n                  \"type\": \"interchange_in\",\n                  \"completed\": true,\n                  \"container\": {\n                      \"id\": 920131,\n                      \"number\": \"KOSU4921341\",\n                      \"goods\": \"N/A\",\n                      \"container_type_label\": \"40HC\",\n                      \"container_status\": \"full\"\n                  },\n                  \"chassis\": {\n                      \"id\": 39528,\n                      \"number\": \"CAMD4370\"\n                  }\n              },\n              {\n                  \"id\": 1358903,\n                  \"type\": \"interchange_out\",\n                  \"completed\": true,\n                  \"container\": {\n                      \"id\": 1956749,\n                      \"number\": \"KOSU6216253\",\n                      \"goods\": \"FRESH PUMPKIN TEMP +45 F 20 % OPEN\",\n                      \"container_type_label\": \"40RF\",\n                      \"container_status\": \"full\",\n                      \"operating_reefer\": true,\n                      \"reefer_temperature\": \"45.1\",\n                      \"reefer_set_point_temperature\": \"45.0\",\n                      \"supply_temperature\": null\n                  },\n                  \"chassis\": {\n                      \"id\": 39849,\n                      \"number\": \"CAMD5034\"\n                  },\n                  \"genset\": {\n                      \"id\": 5895,\n                      \"number\": \"G335\"\n                  }\n              }\n          ],\n          \"duration\": \"27\"\n      },\n      {\n          \"id\": 1164057,\n          \"truck\": {\n              \"id\": 3274,\n              \"license_plate\": \"JA111\",\n              \"number\": \"428\",\n              \"trucking_company_id\": 118,\n              \"active\": true,\n              \"allowed_until\": null\n          },\n          \"truck_driver\": {\n              \"id\": 23801,\n              \"number\": \"611574\",\n              \"license_number\": \"N/A\",\n              \"firstname\": \"firstname\",\n              \"lastname\": \"lastname\",\n              \"twic\": \"\",\n              \"active\": true\n          },\n          \"gated_in_at\": \"2020-11-25T19:17:56Z\",\n          \"gated_out_at\": \"2020-11-25T20:17:28Z\",\n          \"trucking_company\": {\n              \"id\": 118,\n              \"name\": \"MARTAINER, INC.\",\n              \"code\": null\n          },\n          \"gate\": {\n              \"id\": 98,\n              \"name\": \"West Gate\"\n          },\n          \"gate_in_user\": {\n              \"id\": 418,\n              \"email\": \"email@gmail.com\",\n              \"firstname\": \"firstname\",\n              \"lastname\": \"lastname\",\n              \"name\": \"Firstname Lastname\"\n          },\n          \"gate_out_user\": {\n              \"id\": 3456,\n              \"email\": \"email2@gmail.com\",\n              \"firstname\": \"firstname\",\n              \"lastname\": \"lastname\",\n              \"name\": \"Firstname Lastname\"\n          },\n          \"interchanges\": [\n              {\n                  \"id\": 1358268,\n                  \"type\": \"interchange_in\",\n                  \"completed\": true,\n                  \"chassis\": {\n                      \"id\": 45326,\n                      \"number\": \"CAMD7003\"\n                  }\n              },\n              {\n                  \"id\": 1358420,\n                  \"type\": \"interchange_out\",\n                  \"completed\": true,\n                  \"container\": {\n                      \"id\": 920131,\n                      \"number\": \"KOSU4921341\",\n                      \"goods\": \"N/A\",\n                      \"container_type_label\": \"40HC\",\n                      \"container_status\": \"empty\"\n                  },\n                  \"chassis\": {\n                      \"id\": 39528,\n                      \"number\": \"CAMD4370\"\n                  }\n              }\n          ],\n          \"duration\": \"60\"\n      }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/truck_visits/show","name":"show","apis":[{"api_url":"/api/v1/truck_visits/:id","http_method":"GET","short_description":"Get details of a truck visit.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eReturns information about the truck visit.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"\n\u003cp\u003eRetrieve information regarding a specific truck visit with the truck visit’s ID in Octopi.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/truck_visits/123.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"'\n","{\n  \"id\": 123,\n  \"truck\": {\n    \"id\": 2787,\n    \"license_plate\": \"ABCX59\",\n    \"number\": \"270\",\n    \"trucking_company_id\": 100,\n    \"active\": true,\n    \"allowed_until\": null\n  },\n  \"truck_driver\": {\n    \"id\": 23801,\n    \"fullname\": \"John Doe\",\n    \"license_number\": \"611574\",\n    \"twic\": \"\",\n    \"number\": \"633353\",\n    \"active\": true,\n    \"date_of_birth\": null,\n    \"telephone_number\": null,\n    \"email\": null,\n    \"remarks\": null,\n    \"trucking_company\": \"TruckingCo1\",\n    \"allowed_until\": null,\n    \"created_at\": \"2017-09-15T15:47:12Z\",\n    \"updated_at\": \"2023-09-15T15:47:12Z\"\n  },\n  \"gated_in_at\": null,\n  \"gated_out_at\": null,\n  \"trucking_company\": {\n    \"id\": 118,\n    \"name\": \"MARTAINER, INC.\",\n    \"code\": null\n  },\n  \"gate\": {\n    \"id\": 12,\n    \"name\": \"Some Gate\"\n  },\n  \"gate_in_user\": {\n    \"id\": 543,\n    \"email\": \"jim.shim@terminal.com\",\n    \"firstname\": \"Jim\",\n    \"lastname\": \"Shim\",\n    \"name\": \"Jim Shim\"\n  },\n  \"interchanges\": [],\n  \"duration\": \"0\"\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/truck_visits/create","name":"create","apis":[{"api_url":"/api/v1/truck_visits.json","http_method":"POST","short_description":"Create a truck visit.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eCreates a new TBD truck visit or truck visit with interchanges when a pre advice number is provided.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"truck_driver_id","full_name":"truck_driver_id","description":"\n\u003cp\u003eTruck driver ID. If this parameter is present, truck_driver_number and truck_driver_license will be ignored.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_driver_number","full_name":"truck_driver_number","description":"\n\u003cp\u003eTruck driver number. If truck_driver_id is present, this will be ignored.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_driver_license","full_name":"truck_driver_license","description":"\n\u003cp\u003eTruck driver license number. If truck_driver_id or truck_driver_number is present, this will be ignored.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck","full_name":"truck","description":"\n\u003cp\u003eTruck license plate number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"gate","full_name":"gate","description":"\n\u003cp\u003eIn Gate name or client identifier.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"out_gate","full_name":"out_gate","description":"\n\u003cp\u003eOut Gate name or client identifier.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"comment","full_name":"comment","description":"\n\u003cp\u003eA comment for this truck visit.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"pre_advice_number","full_name":"pre_advice_number","description":"\n\u003cp\u003eProvide Pre Advice number as stored in Octopi to create truck visit and interchanges from a pre-advice. Please note that other params except gate will be ignored when a pre-advice number is provided.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"appointment_id","full_name":"appointment_id","description":"\n\u003cp\u003eThe appointment ID stored in Octopi. When provided, a truck visit and interchanges will be created from this appointment. All other parameters except gate will be ignored.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"appointment_number","full_name":"appointment_number","description":"\n\u003cp\u003eThe appointment number stored in Octopi. Used to create a truck visit and interchanges from the appointment. All other parameters except gate will be ignored. Ignored if appointment_id is provided.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"interchanges_completed_at","full_name":"interchanges_completed_at","description":"\n\u003cp\u003eThe date and time of completion of all the interchanges in the pre advice. Provide ISO 8601 format (Eg 2023-04-13T14:30:00Z). Providing this value will create the interchanges of truck visit with a completed status.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/truck_visits.json\"\n-d '{\n      \"truck_driver_number\": \"1231NU78\",\n      \"gate\": \"North Gate\",\n      \"truck\": \"ABC123\",\n      \"comment\": \"Arrived early\"\n    }'\n-H \"Accept: application/json\"\n-H \"Content-Type: application/json\"\n-H \"Authorization: Token token=YOURTOKEN\"\n","{\n  \"truck_visit\": {\n    \"id\": 1876441,\n    \"gated_in_at\": \"2022-06-01T07:29:45Z\",\n    \"gated_out_at\": null\n  },\n  \"gate_name\": \"North Gate\",\n  \"truck_driver\": \"Agua Agua\",\n  \"truck\": \"ABC123\",\n  \"comment\": \"Arrived early\"\n}\n","{ \"error\": \"Truck is already at the terminal.\" }\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"trucking_companies":{"doc_url":"/api/v1/documentation/1.0/trucking_companies","id":"trucking_companies","api_url":"/api/v1","name":"Trucking_companies","short_description":"This resources allows you to create, read, update, or delete trucking companies in Octopi.","full_description":"\n\u003cp\u003eUse this API resources to CRUD trucking companies.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/trucking_companies/index","name":"index","apis":[{"api_url":"/api/v1/trucking_companies","http_method":"GET","short_description":"Returns the list of trucking companies","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint will allow you to get a list of trucking companies. You can filter by using different query parameters such as name or general_ledger_id.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"name","full_name":"name","description":"\n\u003cp\u003eAllows you to filter/search trucking companies by name\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"code","full_name":"code","description":"\n\u003cp\u003eAllows you to filter/search trucking companies by codes (e.g. SCAC codes)\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"general_ledger_id","full_name":"general_ledger_id","description":"\n\u003cp\u003eAllows you to filter/search trucking companies by general ledger ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"missing_general_ledger_id","full_name":"missing_general_ledger_id","description":"\n\u003cp\u003eSet to true to return all trucking companies that do not have a general ledger ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"active","full_name":"active","description":"\n\u003cp\u003eFilter for active trucking companies by setting to true. Or set to false to get all inactive trucking companies. If absent, Octopi will return both active and inactive trucking companies.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/trucking_companies.json?name=Octopi\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"actions\" : {\n      \"previous\" : {\n         \"url\" : \"https://app.octopi.co/api/v1/trucking_companies.json?page=1\u0026per=10\",\n         \"method\" : \"GET\"\n      },\n      \"last\" : {\n         \"url\" : \"https://app.octopi.co/api/v1/trucking_companies.json?page=7\u0026per=10\",\n         \"method\" : \"GET\"\n      },\n      \"next\" : {\n         \"url\" : \"https://app.octopi.co/api/v1/trucking_companies.json?page=3\u0026per=10\",\n         \"method\" : \"GET\"\n      },\n      \"index\" : {\n         \"url\" : \"https://app.octopi.co/api/v1/trucking_companies.json\",\n         \"method\" : \"GET\"\n      }\n   },\n   \"trucking_companies\" : [\n      {\n         \"phone\" : null,\n         \"name\" : \"FC OCTOPI\",\n         \"code\" : null,\n         \"general_ledger_id\" : null,\n         \"vat_number\" : \"2122\",\n         \"email\" : null,\n         \"id\" : 337395,\n         \"address\" : null,\n         \"contact_person\" : null\n      },\n      {\n         \"address\" : null,\n         \"contact_person\" : null,\n         \"id\" : 337386,\n         \"email\" : null,\n         \"general_ledger_id\" : null,\n         \"vat_number\" : \"222\",\n         \"phone\" : null,\n         \"code\" : null,\n         \"name\" : \"INTER OCTOPI\"\n      },\n      {\n         \"email\" : null,\n         \"general_ledger_id\" : null,\n         \"vat_number\" : \"2224\",\n         \"phone\" : null,\n         \"code\" : null,\n         \"name\" : \"OCTOPI UNITED FC\",\n         \"address\" : null,\n         \"contact_person\" : null,\n         \"id\" : 337385\n      }\n   ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/trucking_companies/show","name":"show","apis":[{"api_url":"/api/v1/trucking_companies/:id","http_method":"GET","short_description":"Returns information about a trucking company","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint will return the information for the trucking company.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/trucking_companies/5.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"trucking_company\" : {\n      \"phone\" : null,\n      \"name\" : \"FC OCTOPI\",\n      \"id\" : 337395,\n      \"general_ledger_id\" : null,\n      \"vat_number\" : null,\n      \"address\" : null,\n      \"contact_person\" : null,\n      \"code\" : null,\n      \"email\" : null\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/trucking_companies/create","name":"create","apis":[{"api_url":"/api/v1/trucking_companies","http_method":"POST","short_description":"Create a new trucking company","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to create a new trucking company.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/trucking_companies.json\" -X POST -d '{ \"name\" : \"FC UNITED\", \"general_ledger_id\": \"SL1231\", \"contact_person\": \"Joe Jones\", \"address\": \"123 Main St\", \"email\": \"joe@example.com\", \"code\": \"111\", \"vat_number\": \"223\"}' -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"trucking_company\" : {\n      \"email\" : \"joe@example.com\",\n      \"id\" : 353388,\n      \"general_ledger_id\" : \"SL1231\",\n      \"phone\" : \"786-111-1111\",\n      \"code\" : \"SCAC\",\n      \"vat_number\" : \"223\",\n      \"address\" : \"123 Main St\",\n      \"contact_person\" : \"Joe Jones\",\n      \"name\" : \"FC UNITED\"\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/trucking_companies/update","name":"update","apis":[{"api_url":"/api/v1/trucking_companies/:id","http_method":"PUT","short_description":"Updates a trucking company record","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to update a trucking company.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/trucking_companies/353388.json\" -X PUT -d '{ \"name\" : \"FC UNITED LLC\", \"code\": \"222\" , \"vat_number\": \"223\"}' -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"trucking_company\" : {\n      \"code\" : \"222\",\n      \"contact_person\" : \"Joe Jones\",\n      \"phone\" : null,\n      \"general_ledger_id\" : \"SL1231\",\n      \"name\" : \"FC UNITED LLC\",\n      \"vat_number\" : \"223\",\n      \"address\" : \"123 Main St\",\n      \"email\" : \"joe@example.com\",\n      \"id\" : 353388\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/trucking_companies/destroy","name":"destroy","apis":[{"api_url":"/api/v1/trucking_companies/:id","http_method":"DELETE","short_description":"Soft deletes a trucking company record","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to delete a trucking company. This is a soft delete. It will mark the company as inactive.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/trucking_companies/353388.json\" -X DELETE -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n   \"trucking_company\" : {\n      \"contact_person\" : null,\n      \"phone\" : null,\n      \"email\" : null,\n      \"code\" : null,\n      \"name\" : \"A+ TIRE\",\n      \"vat_number\" : null,\n      \"address\" : \"DELMAS 19, RUE PIERRE ANSELME\",\n      \"id\" : 300009,\n      \"general_ledger_id\" : null\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"trucks":{"doc_url":"/api/v1/documentation/1.0/trucks","id":"trucks","api_url":"/api/v1","name":"Trucks","short_description":"This resources allows you to create, read, update, or delete trucks in Octopi.","full_description":"\n\u003cp\u003eUse this API resources to CRUD trucks.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/trucks/index","name":"index","apis":[{"api_url":"/api/v1/trucks","http_method":"GET","short_description":"Returns a list of trucks","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint will allow you to get a list of trucks. You can filter by using different query parameters such as license_plate or truck_driver.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"license_plate","full_name":"license_plate","description":"\n\u003cp\u003eAllows you to filter/search trucks by license plate\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"trucking_company","full_name":"trucking_company","description":"\n\u003cp\u003eAllows you to filter/search trucks by trucking company\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_driver_number","full_name":"truck_driver_number","description":"\n\u003cp\u003eAllows you to filter/search trucks by truck driver number\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"active","full_name":"active","description":"\n\u003cp\u003eFilter for active trucks by setting to true. Set to false to get all inactive trucks. If absent, Octopi will return both active and inactive trucks.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/trucks.json?license_plate=Octopi\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n  \"trucks\": [\n      {\n          \"id\": 123,\n          \"active\": true,\n          \"display_name\": \"00000 (Trucking Company: ABC TRANSPORT)\",\n          \"year\": null,\n          \"trucking_company\": {\n            \"name\": \"ABC TRANSPORT\",\n            \"code\": null,\n          },\n          \"truck_driver\": {\n            \"fullname\": \"John Doe\",\n            \"license_number\": \"ABC1234\",\n            \"number\": \"356396\"\n          },\n          \"created_at\": \"2018-05-23T16:00:26Z\",\n          \"updated_at\": \"2020-01-27T19:24:30Z\"\n      },\n      {\n          \"id\": 456,\n          \"active\": true,\n          \"display_name\": \"00001 (Trucking Company: ABC TRANSPORT)\",\n          \"year\": null,\n          \"trucking_company\": {\n            \"name\": \"ABC TRANSPORT\",\n            \"code\": null,\n          },\n          \"created_at\": \"2020-07-17T23:19:32Z\",\n          \"updated_at\": \"2021-06-17T05:02:26Z\"\n      },\n      {\n          \"id\": 789,\n          \"active\": true,\n          \"display_name\": \"00002 (Trucking Company: XYZ TRANSPORT)\",\n          \"year\": null,\n          \"trucking_company\": {\n            \"name\": \"XYZ TRANSPORT\",\n            \"code\": \"IGG897\",\n          },\n          \"created_at\": \"2018-04-19T22:16:54Z\",\n          \"updated_at\": \"2021-05-14T11:03:38Z\"\n      },\n\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/trucks/create","name":"create","apis":[{"api_url":"/api/v1/trucks","http_method":"POST","short_description":"Allows creating a new truck","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint will allow you to create new trucks within Octopi.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"truck","full_name":"truck","description":"\n\u003cp\u003eTruck data\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"license_plate","full_name":"truck[license_plate]","description":"\n\u003cp\u003eTruck license plate\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"number","full_name":"truck[number]","description":"\n\u003cp\u003eTruck number\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_driver_license_number","full_name":"truck[truck_driver_license_number]","description":"\n\u003cp\u003eTruck driver’s license number\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"trucking_company","full_name":"truck[trucking_company]","description":"\n\u003cp\u003eTrucking company’s name\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"weight","full_name":"truck[weight]","description":"\n\u003cp\u003eTruck weight in your organization’s weight unit preference\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"active","full_name":"truck[active]","description":"\n\u003cp\u003eIs the truck active?\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"color","full_name":"truck[color]","description":"\n\u003cp\u003eTruck color hex code\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"make","full_name":"truck[make]","description":"\n\u003cp\u003eTruck make\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"model","full_name":"truck[model]","description":"\n\u003cp\u003eTruck model\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"year","full_name":"truck[year]","description":"\n\u003cp\u003eTruck year\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"allowed_until","full_name":"truck[allowed_until]","description":"\n\u003cp\u003eUntil when is this truck allowed at the terminal? Sample valid entries: ‘2022-06-02’, ‘2/6/2022’, ‘June 2, 2022’\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"is_mule","full_name":"truck[is_mule]","description":"\n\u003cp\u003eIs the truck a mule?\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl --location --request POST 'https://app.octopi.co/api/v1/trucks.json'     --header 'Authorization: Bearer token_value'     --header 'Content-Type: application/json'     --data-raw '{\n    \"truck\": {\n      \"license_plate\": \"ABC123\",\n      \"number\": \"12345\",\n      \"weight\": 10000,\n      \"color\": \"#00528D\",\n      \"make\": \"A\",\n      \"model\": \"M\",\n      \"year\": 1987,\n      \"active\": true\n    }\n}'\n","{\n  \"truck\": {\n    \"id\": 27095,\n    \"active\": true,\n    \"license_plate\": \"ABC123\",\n    \"number\": \"12345\",\n    \"weight\": 4535,\n    \"color\": \"#00528D\",\n    \"is_mule\": false,\n    \"allowed_until\": null,\n    \"year\": 1987,\n    \"make\": \"A\",\n    \"model\": \"M\",\n    \"created_at\": \"2022-06-22T09:10:16Z\",\n    \"updated_at\": \"2022-06-22T09:10:16Z\"\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/trucks/update","name":"update","apis":[{"api_url":"/api/v1/trucks/:truck_license_number","http_method":"PATCH","short_description":"Allows editing an existing truck","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint will allow you to edit existing trucks within Octopi.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"truck_license_number","full_name":"truck_license_number","description":"\n\u003cp\u003eTruck license plate. This is the resource you will update.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck","full_name":"truck","description":"\n\u003cp\u003eTruck data\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"number","full_name":"truck[number]","description":"\n\u003cp\u003eTruck number\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_driver_license_number","full_name":"truck[truck_driver_license_number]","description":"\n\u003cp\u003eTruck driver’s license number\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"trucking_company","full_name":"truck[trucking_company]","description":"\n\u003cp\u003eTrucking company’s name\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"weight","full_name":"truck[weight]","description":"\n\u003cp\u003eTruck weight in your organization’s weight unit preference\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"active","full_name":"truck[active]","description":"\n\u003cp\u003eIs the truck active?\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"color","full_name":"truck[color]","description":"\n\u003cp\u003eTruck color hex code\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"make","full_name":"truck[make]","description":"\n\u003cp\u003eTruck make\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"model","full_name":"truck[model]","description":"\n\u003cp\u003eTruck model\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"year","full_name":"truck[year]","description":"\n\u003cp\u003eTruck year\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"allowed_until","full_name":"truck[allowed_until]","description":"\n\u003cp\u003eUntil when is this truck allowed at the terminal? Sample valid entries: ‘2022-06-02’, ‘2/6/2022’, ‘June 2, 2022’\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"is_mule","full_name":"truck[is_mule]","description":"\n\u003cp\u003eIs the truck a mule?\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl --location --request PATCH 'https://app.octopi.co/api/v1/trucks/:truck_license_number.json'     --header 'Authorization: Bearer token_value'     --header 'Content-Type: application/json'     --data-raw '{\n  \"truck\": {\n    \"license_plate\": \"TEST123\",\n    \"number\": \"6789\",\n    \"weight\": 12300,\n    \"active\": false\n  }\n}'\n","{\n  \"truck\": {\n    \"id\": 27095,\n    \"active\": false,\n    \"license_plate\": \"TEST123\",\n    \"number\": \"6789\",\n    \"weight\": 5579,\n    \"color\": \"#00528D\",\n    \"is_mule\": false,\n    \"allowed_until\": null,\n    \"year\": 1987,\n    \"make\": \"A\",\n    \"model\": \"M\",\n    \"created_at\": \"2022-06-22T09:10:16Z\",\n    \"updated_at\": \"2022-06-22T09:12:08Z\"\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/trucks/gate_out","name":"gate_out","apis":[{"api_url":"/api/v1/trucks/:truck_license_number/gate_out.json","http_method":"POST","short_description":"Performs gate out operation for a truck with truck license number provided","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003ePerforms completion of gate out operation for the truck\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"truck_license_number","full_name":"truck_license_number","description":"\n\u003cp\u003eLicense number of the truck\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"reason_for_incomplete","full_name":"reason_for_incomplete","description":"\n\u003cp\u003eReason why interchanges were not completed\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003ewrong_terminal\u003c/code\u003e, \u003ccode\u003epaperwork\u003c/code\u003e, \u003ccode\u003eother\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"left_without_container","full_name":"left_without_container","description":"\n\u003cp\u003eWhether the truck left without a container\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_seals","full_name":"container_seals","description":"\n\u003cp\u003eContainer seals\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an Array of nested elements","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"container_number","full_name":"container_seals[container_number]","description":"\n\u003cp\u003eContainer number to which seal is added during gate out\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"seal","full_name":"container_seals[seal]","description":"\n\u003cp\u003eSeal added to the container during gate out\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]},{"name":"chassis_leaving_with_truck","full_name":"chassis_leaving_with_truck","description":"\n\u003cp\u003eAn array of chassis numbers that were used for dropping off containers and are now departing with the truck.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of any type","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl --location --request POST 'https://app.octopi.co/api/v1/trucks/:truck_license_number/gate_out.json'     --header 'Authorization: Bearer token_value'     --header 'Content-Type: application/json'     --data-raw '{\n  \"reason_for_incomplete\": \"wrong_terminal\",\n  \"left_without_container\": false,\n  \"container_seals\": [\n    {\n        \"container_number\": \"UTIU1939201\",\n        \"seal\":\"ZDFDGFR1\"\n    },\n    {\n        \"container_number\": \"TESU1293024\",\n        \"seal\":\"SERERE22\"\n    }\n    ]\n}'\n","{\n  \"id\": 179,\n  \"truck\": {\n      \"id\": 1,\n      \"license_plate\": \"TRK1\",\n      \"number\": \"\",\n      \"trucking_company_id\": 1,\n      \"active\": true,\n      \"allowed_until\": null\n  },\n  \"truck_driver\": {\n      \"id\": 1,\n      \"number\": \"DRIVER-1\",\n      \"license_number\": \"N/A\",\n      \"firstname\": \"DRIVER\",\n      \"lastname\": \"ONE\",\n      \"twic\": null,\n      \"discarded_at\": null,\n      \"active\": true\n  },\n  \"gated_in_at\": \"2022-03-25T10:08:21Z\",\n  \"gated_out_at\": \"2022-03-25T10:08:49Z\"\n}\n","curl --location --request POST 'https://app.octopi.co/api/v1/trucks/:truck_license_number/gate_out.json'     --header 'Authorization: Bearer token_value'     --header 'Content-Type: application/json'     --data-raw '{\n  \"chassis_leaving_with_truck\": [\"CH101\", \"CH102\"]\n}'\n","{\n  \"id\": 180,\n  \"truck\": {\n      \"id\": 1,\n      \"license_plate\": \"TRK1\",\n      \"number\": \"\",\n      \"trucking_company_id\": 1,\n      \"active\": true,\n      \"allowed_until\": null\n  },\n  \"truck_driver\": {\n      \"id\": 1,\n      \"number\": \"DRIVER-1\",\n      \"license_number\": \"N/A\",\n      \"firstname\": \"DRIVER\",\n      \"lastname\": \"ONE\",\n      \"twic\": null,\n      \"discarded_at\": null,\n      \"active\": true\n  },\n  \"gated_in_at\": \"2022-03-25T10:08:21Z\",\n  \"gated_out_at\": \"2022-03-25T10:08:49Z\"\n}\n","{\n  \"error\": \"Truck Visit was not completed. The following container has unlifted holds: APLU1010203\"\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"vehicles":{"doc_url":"/api/v1/documentation/1.0/vehicles","id":"vehicles","api_url":"/api/v1","name":"Vehicles","short_description":"This resource allows you to fetch data about vehicles.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/vehicles/index","name":"index","apis":[{"api_url":"/api/v1/vehicles.json","http_method":"GET","short_description":"Gets a list of vehicles","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to fetch information about vehicles.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":400,"description":"Bad request.","metadata":null},{"code":422,"description":"Unprocessable entity.","metadata":null},{"code":500,"description":"Internal server error.","metadata":null}],"params":[{"name":"vin","full_name":"vin","description":"\n\u003cp\u003eFilter by Vehicle Identification Number (VIN).\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"arrival_voyage_id","full_name":"arrival_voyage_id","description":"\n\u003cp\u003eFilter for a specific arrival voyage. Can be the Octopi voyage id or voyage number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"booking_id","full_name":"booking_id","description":"\n\u003cp\u003eFilter for a specific booking. Can be the Octopi booking id or booking number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"commodity_type","full_name":"commodity_type","description":"\n\u003cp\u003eFilter for a specific commodity type.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"consignee_id","full_name":"consignee_id","description":"\n\u003cp\u003eFilter for a specific consignee. Can be the Octopi consignee id or consignee name.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"current_location_type","full_name":"current_location_type","description":"\n\u003cp\u003eFilter for a specific current location type.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"departure_voyage_id","full_name":"departure_voyage_id","description":"\n\u003cp\u003eFilter for a specific departure voyage.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"dock_receipt_id","full_name":"dock_receipt_id","description":"\n\u003cp\u003eFilter for a specific dock receipt. Can be the Octopi dock receipt id or dock receipt number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"reference_number","full_name":"reference_number","description":"\n\u003cp\u003eFilter for a specific reference number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"stripped_from_container_id","full_name":"stripped_from_container_id","description":"\n\u003cp\u003eFilter by the container the cargo was stripped from. Can be the Octopi container id or container number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"tags","full_name":"tags","description":"\n\u003cp\u003eFilter for a list of pipe-separated tags (eg. ‘tag1|tag2|tag3’)\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"usage","full_name":"usage","description":"\n\u003cp\u003eFilter for a specific usage.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/vehicles.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR_TOKEN\" -d '{ \"consignee_id\": \"ABC DIRECT\" }'\n","{\n  \"vehicles\": [\n    {\n      \"id\": 12345,\n      \"quantity\": 1,\n      \"goods_description\": \"Toyota Tacoma\",\n      \"arrival_voyage\": null,\n      \"departure_voyage\": null,\n      \"commodity_type\": null,\n      \"consignees\": [\n        \"CAPCOM AUTO SALES\"\n      ],\n      \"current_location_type\": \"Terminal\",\n      \"current_location\": \"South Terminal\",\n      \"dock_receipt\": \"201011005\",\n      \"reference_number\": null,\n      \"tags\": [],\n      \"usage\": \"export\",\n      \"volume\": \"14.80\",\n      \"flex_fields\": [\n        {\n          \"label\": \"Color\",\n          \"value\": \"Blue\"\n        },\n        {\n          \"label\": \"Year\",\n          \"value\": \"2019\"\n        }\n      ]\n    },\n    {\n      \"id\": 5678,\n      \"quantity\": 1,\n      \"goods_description\": \"Bmw X7 2020\",\n      \"arrival_voyage\": null,\n      \"departure_voyage\": null,\n      \"commodity_type\": null,\n      \"consignees\": [\n        \"CARICOM AUTO SALES\"\n      ],\n      \"current_location_type\": \"Terminal\",\n      \"current_location\": \"North Terminal\",\n      \"dock_receipt\": \"201011000\",\n      \"reference_number\": null,\n      \"tags\": [],\n      \"usage\": \"export\",\n      \"volume\": \"18.66\",\n      \"flex_fields\": [\n        {\n          \"label\": \"Make\",\n          \"value\": \"BMW\"\n        },\n        {\n          \"label\": \"Model\", \n          \"value\": \"X7\"\n        }\n      ]\n    }\n  ],\n  \"actions\": {\n    \"index\": {\n      \"method\": \"GET\",\n      \"url\": \"http://localhost:3000/api/v1/vehicles\"\n    },\n    \"next\": {\n      \"method\": \"GET\",\n      \"url\": \"http://localhost:3000/api/v1/vehicles?page=3\"\n    },\n    \"previous\": {\n      \"method\": \"GET\",\n      \"url\": \"http://localhost:3000/api/v1/vehicles?page=1\"\n    },\n    \"last\": {\n      \"method\": \"GET\",\n      \"url\": \"http://localhost:3000/api/v1/vehicles?page=747\"\n    }\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/vehicles/show","name":"show","apis":[{"api_url":"/api/v1/vehicles/:id.json","http_method":"GET","short_description":"Returns information about a specific vehicle","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to fetch information about a specific vehicle.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":400,"description":"Bad request.","metadata":null},{"code":422,"description":"Unprocessable entity.","metadata":null},{"code":500,"description":"Internal server error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"\n\u003cp\u003eThe Octopi ID or VIN of the vehicle.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/vehicles/:id.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR_TOKEN\"'\n","{\n  \"vehicle\": {\n    \"id\": 12345,\n    \"reference_number\": null,\n    \"quantity\": 1,\n    \"goods\": \"Toyota Tacoma\",\n    \"goods_description\": \"Toyota Tacoma\",\n    \"shipping_marks\": null,\n    \"usage\": \"export\",\n    \"active_bill_of_ladings\": \"\",\n    \"vin_number\": \"5TFUU4EN112\",\n    \"consignee\": \"Consignee: CAPCOM AUTO SALES\",\n    \"current_location_type\": \"Terminal\",\n    \"current_location\": \"South Terminal\",\n    \"weight_unit\": \"kg\",\n    \"weight\": 1508.19,\n    \"dimension_unit\": \"meter\",\n    \"width\": 1.83,\n    \"height\": 1.68,\n    \"length\": 4.83,\n    \"volume\": \"14.80\",\n    \"pieces_per_package\": null,\n    \"package_weight\": 0,\n    \"yard_slot\": null,\n    \"package_type_code\": null,\n    \"package_type\": null,\n    \"extra_attributes\": null,\n    \"flex_fields\": [\n      {\n        \"label\": \"Color\",\n        \"value\": \"Red\"\n      },\n      {\n        \"label\": \"Year\",\n        \"value\": \"2020\"\n      }\n    ]\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/vehicles/update","name":"update","apis":[{"api_url":"/api/v1/vehicles/:id.json","http_method":"PATCH","short_description":"Update a vehicle's data.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to update data for a specific vehicle.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":400,"description":"Bad request.","metadata":null},{"code":422,"description":"Unprocessable entity.","metadata":null},{"code":500,"description":"Internal server error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"\n\u003cp\u003eThe Octopi ID or VIN of the vehicle you would like to update.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"goods_description","full_name":"goods_description","description":"\n\u003cp\u003eThe vehicle’s description.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"consignee_names","full_name":"consignee_names","description":"\n\u003cp\u003eAn array of consignee names.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of String","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_line","full_name":"shipping_line","description":"\n\u003cp\u003eThe vehicle’s shipping line.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"usage","full_name":"usage","description":"\n\u003cp\u003eThe vehicle’s usage.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"weight","full_name":"weight","description":"\n\u003cp\u003eThe vehicle’s weight in your organization’s weight unit preference.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Numeric","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"height","full_name":"height","description":"\n\u003cp\u003eThe vehicle’s height in your organization’s dimension unit preference.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Numeric","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"length","full_name":"length","description":"\n\u003cp\u003eThe vehicle’s length in your organization’s dimension unit preference.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Numeric","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"width","full_name":"width","description":"\n\u003cp\u003eThe vehicle’s width in your organization’s dimension unit preference.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Numeric","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"year","full_name":"year","description":"\n\u003cp\u003eThe vehicle’s year.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Numeric","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"make","full_name":"make","description":"\n\u003cp\u003eThe vehicle’s make.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"model","full_name":"model","description":"\n\u003cp\u003eThe vehicle’s model.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"reference_number","full_name":"reference_number","description":"\n\u003cp\u003eThe vehicle’s reference number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"color","full_name":"color","description":"\n\u003cp\u003eThe vehicle’s color.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"quantity","full_name":"quantity","description":"\n\u003cp\u003eThe vehicle’s quantity.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Numeric","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"package_weight","full_name":"package_weight","description":"\n\u003cp\u003eThe vehicle’s package weight.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Numeric","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"extra_attributes","full_name":"extra_attributes","description":"\n\u003cp\u003eA key-value pair of extra attributes for the vehicle.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl -X PUT \\\n\"https://app.octopi.co/api/v1/vehicles/:id.json\" \\\n-H \"Accept: application/json\" \\\n-H \"Content-Type: application/json\" \\\n-H \"Authorization: Token token=YOUR_TOKEN\" \\\n-d '{\n  \"vehicle\": {\n    \"goods_description\": \"Toyota Mirai\",\n    \"quantity\": 1,\n    \"reference_number\": \"VEH-REF-2024-001\",\n    \"consignee_names\": [\n      \"VEHICLE CONSOL\"\n    ],\n    \"extra_attributes\": {\n      \"foo\": \"bar\"\n    }\n  }\n}'\n","{\n  \"vehicle\": {\n    \"id\": 1234,\n    \"reference_number\": \"VEH-REF-2024-001\",\n    \"quantity\": 1,\n    \"goods\": \"Toyota Tacoma\",\n    \"goods_description\": \"Toyota Mirai\",\n    \"shipping_marks\": null,\n    \"usage\": \"export\",\n    \"active_bill_of_ladings\": \"\",\n    \"vin_number\": \"5TFUU4ENXEX107511\",\n    \"consignee\": \"Consignee: VEHICLE CONSOL\",\n    \"current_location_type\": \"Terminal\",\n    \"current_location\": \"South Terminal\",\n    \"weight_unit\": \"kg\",\n    \"weight\": 1508.00,\n    \"dimension_unit\": \"meter\",\n    \"width\": 1.83,\n    \"height\": 1.68,\n    \"length\": 4.83,\n    \"volume\": \"14.80\",\n    \"pieces_per_package\": null,\n    \"package_weight\": 0,\n    \"yard_slot\": null,\n    \"package_type_code\": null,\n    \"package_type\": null,\n    \"extra_attributes\": {\n      \"foo\": \"bar\"\n    },\n    \"flex_fields\": [{\n      \"label\": \"Color\",\n      \"value\": \"Red\"\n    }, {\n      \"label\": \"Year\", \n      \"value\": \"2023\"\n    }]\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"vessel_tallies":{"doc_url":"/api/v1/documentation/1.0/vessel_tallies","id":"vessel_tallies","api_url":"/api/v1","name":"Vessel_tallies","short_description":"View and update vessel tallies in Octopi.","full_description":"\n\u003cp\u003eThis resource allows you to view and update vessel tallies in Octopi.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/vessel_tallies/index","name":"index","apis":[{"api_url":"/api/v1/vessel_tallies.json","http_method":"GET","short_description":"Get a list of vessel tallies.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to view vessel tallies.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not found.","metadata":null},{"code":500,"description":"Internal server error.","metadata":null}],"params":[{"name":"type","full_name":"type","description":"\n\u003cp\u003eFilter tallies by the operation type.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003edischarge\u003c/code\u003e, \u003ccode\u003eloading\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"vessel_name","full_name":"vessel_name","description":"\n\u003cp\u003eFilter tallies by the vessel name.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"voyage_number","full_name":"voyage_number","description":"\n\u003cp\u003eFilter tallies by the voyage number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[{"code":200,"description":"List of vessel tallies.","is_array":false,"returns_object":[{"name":"tallies","full_name":"tallies","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"deprecated":false,"params":[{"name":"id","full_name":"tallies[id]","description":"\n\u003cp\u003eThe resource ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"vessel_name","full_name":"tallies[vessel_name]","description":"\n\u003cp\u003eThe vessel name.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"voyage_number","full_name":"tallies[voyage_number]","description":"\n\u003cp\u003eThe voyage number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"type","full_name":"tallies[type]","description":"\n\u003cp\u003eThe type of operation for the tally.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003edischarge\u003c/code\u003e, \u003ccode\u003eloading\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"prepared_on","full_name":"tallies[prepared_on]","description":"\n\u003cp\u003eWhen was the tally prepared.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"completed_at","full_name":"tallies[completed_at]","description":"\n\u003cp\u003eWhen was the tally completed.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"closed_at","full_name":"tallies[closed_at]","description":"\n\u003cp\u003eWhen was the tally closed.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"additional_properties":false}],"examples":["curl --location --request GET 'https://app.octopi.co/api/v1/vessel_tallies.json?vessel_name=tropic\u0026voyage_number=0577'     --header 'Authorization: Token token=ADD TOKEN HERE'\n","{\n  \"vessel_tallies\": [\n    {\n      \"id\": 22867,\n      \"vessel_name\": \"TROPIC JEWEL\",\n      \"voyage_number\": \"2022050577\",\n      \"type\": \"Discharge\",\n      \"prepared_on\": \"2022-05-15T12:13:58Z\",\n      \"completed_at\": null,\n      \"closed_at\": null\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/vessel_tallies/update","name":"update","apis":[{"api_url":"/api/v1/vessel_tallies/:id.json","http_method":"PATCH","short_description":"Updates a vessel tally. Perform actions for the containers in the tally.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to update vessel tallies. Perform actions on the containers in the Tally.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not found.","metadata":null},{"code":500,"description":"Internal server error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"\n\u003cp\u003eThe tally ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"tally_items","full_name":"tally_items","description":"\n\u003cp\u003eA list of containers with the actions to be performed. Limited to 10 items.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be an Array of nested elements","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"crane","full_name":"tally_items[crane]","description":"\n\u003cp\u003eThe crane used to perform the action.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"name","full_name":"tally_items[crane][name]","description":"\n\u003cp\u003eThe name of the crane. It is an optional parameter, but it must be provided when tallying containers. An error message will be shown when needed.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]},{"name":"berth","full_name":"tally_items[berth]","description":"\n\u003cp\u003eThe berth area where the vessel is.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"name","full_name":"tally_items[berth][name]","description":"\n\u003cp\u003eThe name of the berth area. It is an optional parameter, but it must be provided when tallying containers. An error message will be shown when needed.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]},{"name":"container_number","full_name":"tally_items[container_number]","description":"\n\u003cp\u003eThe container number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"action","full_name":"tally_items[action]","description":"\n\u003cp\u003eAn action performed on a container in the tally. Available values are ‘tally’, ‘over-tally’, ‘undo’. Defaults to ‘tally’. The action ‘tally’ will discharge or load a container already on the tally. The action ‘over-tally’ will add a container to the tally and tally it, notice the container must exists in octopi. If possible, the action ‘undo’ will reverse the action performed on the container.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etally\u003c/code\u003e, \u003ccode\u003eover-tally\u003c/code\u003e, \u003ccode\u003eundo\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"tallied_at","full_name":"tally_items[tallied_at]","description":"\n\u003cp\u003eA string in ISO 8601 format, representing when the action was performed. Defaults to current time. Must to be after the tally started at time and not in the future.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"seals","full_name":"tally_items[seals]","description":"\n\u003cp\u003eAn array of strings representing the seals for the container.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":true,"validator":"Must be an array of String","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"stowage_location","full_name":"tally_items[stowage_location]","description":"\n\u003cp\u003eThe vessel location for the container.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl --location --request PATCH 'https://app.octopi.co/api/v1/vessel_tallies/116598.json'   --header 'Content-Type: application/json'   --header 'Authorization: Token token=ADD TOKEN HERE'   --data-raw '{\n  \"tally_items\": [\n    {\n      \"crane\": {\n        \"name\": \"Blue Crane\"\n      },\n      \"berth\": {\n        \"name\": \"Blue Berth\"\n      },\n      \"container_number\": \"OCTU1234567\"\n    },\n    {\n      \"action\": \"over-tally\",\n      \"crane\": {\n        \"name\": \"Red Crane\"\n      },\n      \"berth\": {\n        \"name\": \"Red Berth\"\n      },\n      \"container_number\": \"OCTU1234560\"\n    }\n  ]\n}'\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"voyage_event_types":{"doc_url":"/api/v1/documentation/1.0/voyage_event_types","id":"voyage_event_types","api_url":"/api/v1","name":"Voyage_event_types","short_description":"This resource allows you to interact with voyage event types in Octopi.","full_description":"\n\u003cp\u003eThis resource allows clients to read voyage event types available for the organization. Voyage event types define the different kinds of events that can occur during a voyage.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/voyage_event_types/index","name":"index","apis":[{"api_url":"/api/v1/voyage_event_types","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eRetrieve all available voyage event types for the organization with pagination actions at the beginning of response.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"page","full_name":"page","description":"\n\u003cp\u003ePage number for pagination\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per_page","full_name":"per_page","description":"\n\u003cp\u003eNumber of items per page (max 100)\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["# Get all available voyage event types (default: page 1, 25 per page)\n# Response includes 'actions' object with pagination URLs for easy navigation\ncurl 'https://app.octopi.co/api/v1/voyage_event_types' \\\n  -X 'GET' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n\n# Get 100 event types per page (maximum allowed)\ncurl 'https://app.octopi.co/api/v1/voyage_event_types?per_page=100' \\\n  -X 'GET' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n\n# Get specific page\ncurl 'https://app.octopi.co/api/v1/voyage_event_types?page=2' \\\n  -X 'GET' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n","{\n  \"actions\": {\n    \"previous\": {\n      \"url\": \"https://app.octopi.co/api/v1/voyage_event_types?page=0\",\n      \"method\": \"GET\"\n    },\n    \"next\": {\n      \"url\": \"https://app.octopi.co/api/v1/voyage_event_types?page=2\",\n      \"method\": \"GET\"\n    },\n    \"last\": {\n      \"url\": \"https://app.octopi.co/api/v1/voyage_event_types?page=5\",\n      \"method\": \"GET\"\n    },\n    \"index\": {\n      \"url\": \"https://app.octopi.co/api/v1/voyage_event_types\",\n      \"method\": \"GET\"\n    }\n  },\n  \"voyage_event_types\": [\n    {\n      \"id\": 1106,\n      \"name\": \"Pilot Boarded\",\n      \"description\": \"Pilot boarding event\",\n      \"is_date_range\": true,\n      \"uses_service_boat\": true,\n      \"uses_pilot\": true,\n      \"uses_berths\": false,\n      \"custom_value_identifier\": null,\n      \"custom_value_type\": null\n    },\n    {\n      \"id\": 1107,\n      \"name\": \"Berthing\",\n      \"description\": \"Vessel berthing event\",\n      \"is_date_range\": true,\n      \"uses_service_boat\": false,\n      \"uses_pilot\": true,\n      \"uses_berths\": true,\n      \"custom_value_identifier\": null,\n      \"custom_value_type\": null\n    },\n    {\n      \"id\": 1108,\n      \"name\": \"Customs Clearance\",\n      \"description\": \"Customs clearance process\",\n      \"is_date_range\": false,\n      \"uses_service_boat\": false,\n      \"uses_pilot\": false,\n      \"uses_berths\": false,\n      \"custom_value_identifier\": null,\n      \"custom_value_type\": null\n    },\n    {\n      \"id\": 1110,\n      \"name\": \"Fuel Bunkering\",\n      \"description\": \"Fuel bunkering operations\",\n      \"is_date_range\": true,\n      \"uses_service_boat\": true,\n      \"uses_pilot\": false,\n      \"uses_berths\": false,\n      \"custom_value_identifier\": \"Fuel Type\",\n      \"custom_value_type\": \"string\"\n    },\n    {\n      \"id\": 1111,\n      \"name\": \"Cargo Loading\",\n      \"description\": \"Container loading operations\",\n      \"is_date_range\": true,\n      \"uses_service_boat\": false,\n      \"uses_pilot\": false,\n      \"uses_berths\": false,\n      \"custom_value_identifier\": \"Container Count\",\n      \"custom_value_type\": \"number\"\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"voyages":{"doc_url":"/api/v1/documentation/1.0/voyages","id":"voyages","api_url":"/api/v1","name":"Voyages","short_description":"This resource allows you to create, read, update, or delete voyages in Octopi.","full_description":"\n\u003cp\u003eThis resource allows you to create, read, update, or delete voyages in Octopi.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/voyages/index","name":"index","apis":[{"api_url":"/api/v1/voyages.json","http_method":"GET","short_description":"Returns the list of voyages","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThe voyages API endpoint allows querying for voyages. You can optionally pass in a page and/or per parameter\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Voyage Not Found","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"arrival_end","full_name":"arrival_end","description":"\n\u003cp\u003eFilters out voyages that arrived after this date. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"arrival_start","full_name":"arrival_start","description":"\n\u003cp\u003eFilters out voyages that arrived before this date. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’)\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"departure_end","full_name":"departure_end","description":"\n\u003cp\u003eFilters out voyages that departed after this date. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’)\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"departure_start","full_name":"departure_start","description":"\n\u003cp\u003eFilters out voyages that departed before this date. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’)\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"number","full_name":"number","description":"\n\u003cp\u003eFilter based on voyage number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eThe page number to be fetched. This value defaults to 0\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"updated_at","full_name":"updated_at","description":"\n\u003cp\u003eFilters out voyages that where updated after this date. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’)\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"vessel_name","full_name":"vessel_name","description":"\n\u003cp\u003eFilter based on vessel name\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/voyages.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n","  {\n    \"actions\": {\n        \"index\": {\n            \"method\": \"GET\",\n            \"url\": \"https://app.octopi.co/api/v1/voyages.json\"\n        },\n        \"next\": {\n            \"method\": \"GET\",\n            \"url\": \"https://app.octopi.co/api/v1/voyages.json?page=2\"\n        },\n        \"previous\": {\n            \"method\": \"GET\",\n            \"url\": \"https://app.octopi.co/api/v1/voyages.json?page=1\"\n        },\n        \"last\": {\n            \"method\": \"GET\",\n            \"url\": \"https://app.octopi.co/api/v1/voyages.json?page=6\"\n        }\n    },\n    \"voyages\": [\n        {\n            \"id\": 1204,\n            \"number\": \"346\",\n            \"status\": \"departed\",\n            \"agent\": {\n              \"name\": \"AGEMAR\"\n            },\n            \"stevedoring_company\": {\n                \"name\": \"Cargo Handlers B'dos Ltd\"\n            },\n            \"stevedoring_supervisors\": [\n                {\n                    \"name\": \"Kirk Worrell\"\n                }\n            ],\n            \"last_port_of_call\": {\n              \"name\": \"Kingston\",\n              \"locode\": \"JMKIN\"\n            },\n            \"next_port_of_call\": {\n              \"name\": \"Port Everglades\",\n              \"locode\": \"USPEF\"\n            },\n            \"captain\": {\n              \"name\": \"John Doe\"\n            },\n            \"tax_date\": \"2017-12-12\",\n            \"number_of_tug_boats\": 4,\n            \"arrival_number_of_tug_boats\": 2,\n            \"departure_number_of_tug_boats\": 2,\n            \"estimated_time_of_anchorage\": \"2017-04-07T02:00:00.000Z\",\n            \"actual_time_of_anchorage\": \"2017-04-07T07:42:00.000Z\",\n            \"actual_time_of_pilot_boarded\": \"2017-04-07T09:06:00.000Z\",\n            \"actual_time_of_berth\": \"2017-04-07T10:00:00.000Z\",\n            \"actual_time_of_customs_clearance\": \"2017-04-07T12:10:00.000Z\",\n            \"actual_time_of_departure\": \"2017-04-07T18:00:00.000Z\",\n            \"closing_comments\": null,\n            \"display_name\": \"CFS Pafilia 346\",\n            \"actual_time_of_departure_pilot_boarded\": null,\n            \"estimated_time_of_departure\": null,\n            \"receiving_cut_off_time\": \"2017-04-06T12:00:00.000Z\",\n            \"created_at\": \"2017-04-05T18:26:52.331Z\",\n            \"updated_at\": \"2017-06-05T00:02:40.577Z\",\n            \"vessel\": {\n                \"name\": \"CFS Pafilia\",\n                \"imo\": \"9322853\",\n                \"call_sign\": \"6YRE8\",\n                \"vessel_type\": \"Container\",\n                \"loa\": 100,\n                \"flag\": \"GA\",\n                \"gross_tonnage\": 100,\n                \"net_tonnage\": 90\n            },\n            \"assigned_berth_area\": {\n                \"name\": \"NORTH PIER B1\"\n            },\n            \"assigned_yard_area\": {\n                \"name\": \"SHED 2\"\n            },\n            \"discharge_terminal\": {\n                \"name\": \"CPS Yard\"\n            },\n            \"arrival_pilot\": {\n                \"name\": null\n            },\n            \"departure_pilot\": {\n                \"name\": null\n            },\n            \"actions\": {\n                \"show\": {\n                    \"method\": \"GET\",\n                    \"url\": nil\n                }\n            },\n            \"flex_fields\": [\n              {\n                \"label\": \"Name\",\n                \"value\": \"Octopi\"\n              }\n            ]\n        }\n    ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/voyages/create","name":"create","apis":[{"api_url":"/api/v1/voyages.json","http_method":"POST","short_description":"Creates a voyage","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows creating a voyage.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Voyage Not Found","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"voyage","full_name":"voyage","description":"\n\u003cp\u003eA hash with voyage attributes.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"discharge_destination_id","full_name":"voyage[discharge_destination_id]","description":"\n\u003cp\u003eThe discharge destination ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"discharge_destination_type","full_name":"voyage[discharge_destination_type]","description":"\n\u003cp\u003eThe discharge destination type. Valid values are Terminal, Berth Area, or Port.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eTerminal\u003c/code\u003e, \u003ccode\u003eBerth Area\u003c/code\u003e, \u003ccode\u003ePort\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"number","full_name":"voyage[number]","description":"\n\u003cp\u003eThe voyage number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"vessel_name","full_name":"voyage[vessel_name]","description":"\n\u003cp\u003eThe vessel (ship) name. Notice this param is case sensitive.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"agent_id","full_name":"voyage[agent_id]","description":"\n\u003cp\u003eAgent ID.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"arrival_pilot_id","full_name":"voyage[arrival_pilot_id]","description":"\n\u003cp\u003eArrival pilot ID.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"assigned_berth_area_id","full_name":"voyage[assigned_berth_area_id]","description":"\n\u003cp\u003eAssigned berth area ID.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"assigned_yard_area_id","full_name":"voyage[assigned_yard_area_id]","description":"\n\u003cp\u003eAssigned yard area ID.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"at_berth_departure","full_name":"voyage[at_berth_departure]","description":"\n\u003cp\u003eActual time of berth departure. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"at_of_anchorage","full_name":"voyage[at_of_anchorage]","description":"\n\u003cp\u003eActual time of anchorage. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"at_of_berth","full_name":"voyage[at_of_berth]","description":"\n\u003cp\u003eActual time of berth. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"at_of_customs_clearance","full_name":"voyage[at_of_customs_clearance]","description":"\n\u003cp\u003eActual time of customs clearance. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"at_of_departure","full_name":"voyage[at_of_departure]","description":"\n\u003cp\u003eActual time of departure. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"at_of_departure_pilot_boarded","full_name":"voyage[at_of_departure_pilot_boarded]","description":"\n\u003cp\u003eActual time the departure pilot boarded. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"at_of_pilot_boarded","full_name":"voyage[at_of_pilot_boarded]","description":"\n\u003cp\u003eActual time the pilot boarded. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"berth_end_position","full_name":"voyage[berth_end_position]","description":"\n\u003cp\u003eBerth end position.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"berth_start_position","full_name":"voyage[berth_start_position]","description":"\n\u003cp\u003eBerth start position.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"block_receiving_export_past_cut_off","full_name":"voyage[block_receiving_export_past_cut_off]","description":"\n\u003cp\u003eBlock receiving export cargo after the cut off time.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"cancelled","full_name":"voyage[cancelled]","description":"\n\u003cp\u003eCancelled.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"captain","full_name":"voyage[captain]","description":"\n\u003cp\u003eCaptain.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"departed_last_port_on","full_name":"voyage[departed_last_port_on]","description":"\n\u003cp\u003eDeparted last port date.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"departure_pilot_id","full_name":"voyage[departure_pilot_id]","description":"\n\u003cp\u003eDeparture pilot ID.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"et_of_anchorage","full_name":"voyage[et_of_anchorage]","description":"\n\u003cp\u003eEstimated time of anchorage. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"et_of_berth","full_name":"voyage[et_of_berth]","description":"\n\u003cp\u003eEstimated time of berth. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"et_of_departure","full_name":"voyage[et_of_departure]","description":"\n\u003cp\u003eEstimated time of departure. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"last_port_of_call_id","full_name":"voyage[last_port_of_call_id]","description":"\n\u003cp\u003eLast port of call ID.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"next_port_of_call_id","full_name":"voyage[next_port_of_call_id]","description":"\n\u003cp\u003eNext port of call ID.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"receiving_cut_off_time","full_name":"voyage[receiving_cut_off_time]","description":"\n\u003cp\u003eReceiving cut off time.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"stevedoring_company_id","full_name":"voyage[stevedoring_company_id]","description":"\n\u003cp\u003eStevedoring company ID.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"tax_date","full_name":"voyage[tax_date]","description":"\n\u003cp\u003eTax date.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"time_labour_ashore","full_name":"voyage[time_labour_ashore]","description":"\n\u003cp\u003eTime labour ashore.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"time_labour_onboard","full_name":"voyage[time_labour_onboard]","description":"\n\u003cp\u003eTime labour onboard.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"flex_fields","full_name":"voyage[flex_fields]","description":"\n\u003cp\u003eAn array of hashes, where each hash contains a flex field’s canonical name and the corresponding value to be set on the container.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be an array of Hash","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/voyages.json\" -X POST     -H \"Accept: application/json\"     -H \"Content-Type: application/json\"     -H \"Authorization: Token token=ADD TOKEN HERE\"     --data '{\n    \"voyage\": {\n        \"number\": \"NB 010\",\n        \"vessel_name\": \"GRETA\",\n        \"discharge_destination_type\": \"Terminal\",\n        \"discharge_destination_id\": 91\n    }\n}'\n","{\n    \"voyage\": {\n        \"id\": 345749,\n        \"number\": \"NB 010\",\n        \"status\": \"unknown\",\n        \"last_port_of_call\": {\n            \"name\": null,\n            \"locode\": null\n        },\n        \"next_port_of_call\": {\n            \"name\": null,\n            \"locode\": null\n        },\n        \"captain\": {\n            \"name\": null\n        },\n        \"agent\": {\n            \"name\": null\n        },\n        \"stevedoring_company\": {\n            \"name\": null\n        },\n        \"stevedoring_supervisors\": [],\n        \"number_of_tug_boats\": 0,\n        \"arrival_number_of_tug_boats\": null,\n        \"departure_number_of_tug_boats\": 0,\n        \"estimated_time_of_anchorage\": null,\n        \"actual_time_of_anchorage\": null,\n        \"actual_time_of_pilot_boarded\": null,\n        \"actual_time_of_berth\": null,\n        \"actual_time_of_customs_clearance\": null,\n        \"actual_time_of_departure\": null,\n        \"closing_comments\": null,\n        \"display_name\": \"GRETA NB 010\",\n        \"actual_time_of_departure_pilot_boarded\": null,\n        \"estimated_time_of_departure\": null,\n        \"created_at\": \"2023-08-09T13:30:27Z\",\n        \"updated_at\": \"2023-08-09T13:30:27Z\",\n        \"berth_end_position\": 0.0,\n        \"berth_start_position\": 0.0,\n        \"block_receiving_export_past_cut_off\": null,\n        \"departed_last_port_on\": null,\n        \"et_of_berth\": null,\n        \"cancelled\": false,\n        \"ship\": {\n            \"name\": \"GRETA\",\n            \"imo\": null,\n            \"call_sign\": \"6YRH2\",\n            \"vessel_type\": \"Container\",\n            \"loa\": \"\",\n            \"flag\": null,\n            \"gross_tonnage\": 0,\n            \"net_tonnage\": 0\n        },\n        \"vessel\": {\n            \"name\": \"GRETA\",\n            \"imo\": null,\n            \"call_sign\": \"6YRH2\",\n            \"vessel_type\": \"Container\",\n            \"loa\": \"\",\n            \"flag\": null,\n            \"gross_tonnage\": 0,\n            \"net_tonnage\": 0\n        },\n        \"assigned_berth_area\": {\n            \"name\": null\n        },\n        \"assigned_yard_area\": {\n            \"name\": null\n        },\n        \"discharge_terminal\": {\n            \"name\": \"Terminal Name\"\n        },\n        \"discharge_destination\": {\n            \"name\": \"Terminal Name\"\n        },\n        \"arrival_pilot\": {\n            \"name\": null\n        },\n        \"departure_pilot\": {\n            \"name\": null\n        },\n        \"tax_date\": null,\n        \"time_labour_ashore\": null,\n        \"time_labour_onboard\": null,\n        \"flex_fields\": []\n    }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/voyages/show","name":"show","apis":[{"api_url":"/api/v1/voyages/:number.json","http_method":"GET","short_description":"Shows a voyage","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThe voyage API endpoint allows querying for one voyage.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Voyage Not Found","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/voyages/:number.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n","{\n   \"actions\": {\n      \"index\": {\n          \"method\": \"GET\",\n          \"url\": \"https://app.octopi.co/api/v1/voyages.json\"\n      }\n   },\n   \"voyage\" : {\n      \"arrival_number_of_tug_boats\" : null,\n      \"actual_time_of_anchorage\" : \"2017-10-16T04:00:00Z\",\n      \"next_port_of_call\" : {\n         \"name\" : null,\n         \"locode\" : null\n      },\n      \"departure_pilot\" : {\n         \"name\" : null\n      },\n      \"assigned_berth_area\" : {\n         \"name\" : null\n      },\n      \"actual_time_of_departure\" : \"2017-10-20T04:00:00Z\",\n      \"actual_time_of_berth\" : null,\n      \"captain\" : {\n         \"name\" : null\n      },\n      \"estimated_time_of_anchorage\" : \"2017-10-16T04:00:00Z\",\n      \"display_name\" : \"BLUE H 45645\",\n      \"last_port_of_call\" : {\n         \"name\" : null,\n         \"locode\" : null\n      },\n      \"discharge_terminal\" : {\n         \"name\" : \"BLUE TERMINAL\"\n      },\n      \"vessel\" : {\n         \"loa\" : \"\",\n         \"gross_tonnage\" : 0,\n         \"call_sign\" : null,\n         \"vessel_type\" : \"Break Bulk\",\n         \"net_tonnage\" : 0,\n         \"flag\" : null,\n         \"imo\" : null,\n         \"name\" : \"BLUE H\"\n      },\n      \"arrival_pilot\" : {\n         \"name\" : null\n      },\n      \"agent\" : {\n         \"name\" : null\n      },\n      \"actual_time_of_departure_pilot_boarded\" : null,\n      \"tax_date\" : null,\n      \"departure_number_of_tug_boats\" : 0,\n      \"number_of_tug_boats\" : 0,\n      \"ship\" : {\n         \"vessel_type\" : \"Break Bulk\",\n         \"call_sign\" : null,\n         \"loa\" : \"\",\n         \"gross_tonnage\" : 0,\n         \"flag\" : null,\n         \"imo\" : null,\n         \"name\" : \"BLUE H\",\n         \"net_tonnage\" : 0\n      },\n      \"closing_comments\" : null,\n      \"actual_time_of_pilot_boarded\" : null,\n      \"updated_at\" : \"2018-03-05T00:32:50Z\",\n      \"status\" : \"departed\",\n      \"estimated_time_of_departure\" : null,\n      \"receiving_cut_off_time\" : \"2018-03-04T10:00:00.000Z\",\n      \"id\" : 167592,\n      \"created_at\" : \"2018-03-05T00:30:33Z\",\n      \"actual_time_of_customs_clearance\" : null,\n      \"number\" : \"45645\",\n      \"assigned_yard_area\" : {\n         \"name\" : null\n      },\n      \"flex_fields\": [\n        {\n          \"label\": \"Name\",\n          \"value\": \"Octopi\"\n        }\n      ]\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/voyages/update","name":"update","apis":[{"api_url":"/api/v1/voyages/:voyage_number.json","http_method":"PATCH","short_description":"Updates a voyage","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThe voyage API endpoint allows updating a voyage.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Voyage Not Found","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"number","full_name":"number","description":"\n\u003cp\u003eThe voyage number, identifies the voyage to be updated.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"voyage","full_name":"voyage","description":"\n\u003cp\u003eA hash with voyage attributes.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"discharge_destination_id","full_name":"voyage[discharge_destination_id]","description":"\n\u003cp\u003eThe discharge destination ID.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"discharge_destination_type","full_name":"voyage[discharge_destination_type]","description":"\n\u003cp\u003eThe discharge destination type. Valid values are Terminal, Berth Area, or Port.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eTerminal\u003c/code\u003e, \u003ccode\u003eBerth Area\u003c/code\u003e, \u003ccode\u003ePort\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"number","full_name":"voyage[number]","description":"\n\u003cp\u003eThe voyage number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"vessel_name","full_name":"voyage[vessel_name]","description":"\n\u003cp\u003eThe vessel (ship) name. Notice this param is case sensitive.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"agent_id","full_name":"voyage[agent_id]","description":"\n\u003cp\u003eAgent ID.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"arrival_pilot_id","full_name":"voyage[arrival_pilot_id]","description":"\n\u003cp\u003eArrival pilot ID.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"assigned_berth_area_id","full_name":"voyage[assigned_berth_area_id]","description":"\n\u003cp\u003eAssigned berth area ID.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"assigned_yard_area_id","full_name":"voyage[assigned_yard_area_id]","description":"\n\u003cp\u003eAssigned yard area ID.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"at_berth_departure","full_name":"voyage[at_berth_departure]","description":"\n\u003cp\u003eActual time of berth departure. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"at_of_anchorage","full_name":"voyage[at_of_anchorage]","description":"\n\u003cp\u003eActual time of anchorage. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"at_of_berth","full_name":"voyage[at_of_berth]","description":"\n\u003cp\u003eActual time of berth. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"at_of_customs_clearance","full_name":"voyage[at_of_customs_clearance]","description":"\n\u003cp\u003eActual time of customs clearance. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"at_of_departure","full_name":"voyage[at_of_departure]","description":"\n\u003cp\u003eActual time of departure. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"at_of_departure_pilot_boarded","full_name":"voyage[at_of_departure_pilot_boarded]","description":"\n\u003cp\u003eActual time the departure pilot boarded. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"at_of_pilot_boarded","full_name":"voyage[at_of_pilot_boarded]","description":"\n\u003cp\u003eActual time the pilot boarded. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"berth_end_position","full_name":"voyage[berth_end_position]","description":"\n\u003cp\u003eBerth end position.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"berth_start_position","full_name":"voyage[berth_start_position]","description":"\n\u003cp\u003eBerth start position.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"block_receiving_export_past_cut_off","full_name":"voyage[block_receiving_export_past_cut_off]","description":"\n\u003cp\u003eBlock receiving export cargo after the cut off time.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"cancelled","full_name":"voyage[cancelled]","description":"\n\u003cp\u003eCancelled.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"captain","full_name":"voyage[captain]","description":"\n\u003cp\u003eCaptain.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"departed_last_port_on","full_name":"voyage[departed_last_port_on]","description":"\n\u003cp\u003eDeparted last port date.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"departure_pilot_id","full_name":"voyage[departure_pilot_id]","description":"\n\u003cp\u003eDeparture pilot ID.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"et_of_anchorage","full_name":"voyage[et_of_anchorage]","description":"\n\u003cp\u003eEstimated time of anchorage. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"et_of_berth","full_name":"voyage[et_of_berth]","description":"\n\u003cp\u003eEstimated time of berth. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"et_of_departure","full_name":"voyage[et_of_departure]","description":"\n\u003cp\u003eEstimated time of departure. Date must be in ISO 8601 format (eg. ‘2024-06-09T09:30:00Z’).\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"last_port_of_call_id","full_name":"voyage[last_port_of_call_id]","description":"\n\u003cp\u003eLast port of call ID.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"next_port_of_call_id","full_name":"voyage[next_port_of_call_id]","description":"\n\u003cp\u003eNext port of call ID.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"receiving_cut_off_time","full_name":"voyage[receiving_cut_off_time]","description":"\n\u003cp\u003eReceiving cut off time.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"stevedoring_company_id","full_name":"voyage[stevedoring_company_id]","description":"\n\u003cp\u003eStevedoring company ID.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"tax_date","full_name":"voyage[tax_date]","description":"\n\u003cp\u003eTax date.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"time_labour_ashore","full_name":"voyage[time_labour_ashore]","description":"\n\u003cp\u003eTime labour ashore.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"time_labour_onboard","full_name":"voyage[time_labour_onboard]","description":"\n\u003cp\u003eTime labour onboard.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"flex_fields","full_name":"voyage[flex_fields]","description":"\n\u003cp\u003eAn array of hashes, where each hash contains a flex field’s canonical name and the corresponding value to be set on the container.\u003c/p\u003e\n","required":false,"allow_nil":true,"allow_blank":false,"validator":"Must be an array of Hash","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/voyages/:number.json\"       -d '{\"voyage\": { \"captain\": \"Cook\", \"at_of_departure\": \"2024-12-05T18:41:17.422Z\" }}'       -X PATCH -H \"Accept: application/json\"       -H \"Content-Type: application/json\"       -H \"Authorization: Token token=YOURTOKEN\"\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"work_queues":{"doc_url":"/api/v1/documentation/1.0/work_queues","id":"work_queues","api_url":"/api/v1","name":"Work_queues","short_description":"This resource allows you to fetch work queues from Octopi.","full_description":"\n\u003cp\u003eIn Octopi, there are different types of work queues: * terminal: where items are created as containers enter and leave the terminal via the gates * voyage: where items are created as containers get unloaded and loaded from vessels. * general_cargo: where items are created as non-containerized cargo enter and leave the terminal via the gates. * warehouse: where items are created as cargo is stripped from a container.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/work_queues/index","name":"index","apis":[{"api_url":"/api/v1/work_queues.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to fetch a list of work queues in Octopi.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":400,"description":"Invalid request.","metadata":null},{"code":500,"description":"Server crashed.","metadata":null}],"params":[{"name":"exclude_voyage_queues","full_name":"exclude_voyage_queues","description":"\n\u003cp\u003ePass this parameter if you want to exclude voyage queues from the list.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/work_queues.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\" -d '{\"exclude_voyage_queues\":\"true\"}'\n","{\n   \"work_queues\" : [\n      {\n         \"active\" : true,\n         \"voyage\" : {\n            \"name\" : null,\n            \"id\" : null\n         },\n         \"queue_type\" : \"General Cargo\",\n         \"terminal\" : {\n            \"name\" : \"Blue Yard\",\n            \"id\" : 31\n         },\n         \"name\" : \"General Cargo: Blue Yard\",\n         \"yard_area\" : {\n            \"id\" : null,\n            \"name\" : null\n         },\n         \"id\" : 304\n      },\n      {\n         \"yard_area\" : {\n            \"id\" : null,\n            \"name\" : null\n         },\n         \"id\" : 48,\n         \"active\" : true,\n         \"name\" : \"Terminal: Blue Yard\",\n         \"queue_type\" : \"Terminal\",\n         \"voyage\" : {\n            \"id\" : null,\n            \"name\" : null\n         },\n         \"terminal\" : {\n            \"id\" : 31,\n            \"name\" : \"Blue Yard\"\n         }\n      }\n   ],\n   \"actions\" : {\n      \"index\" : {\n         \"url\" : \"http://app.octopi.co/api/v1/work_queues.json\",\n         \"method\" : \"GET\"\n      }\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"yard_areas":{"doc_url":"/api/v1/documentation/1.0/yard_areas","id":"yard_areas","api_url":"/api/v1","name":"Yard_areas","short_description":"Returns information about a yard area.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/yard_areas/index","name":"index","apis":[{"api_url":"/api/v1/yard_areas.json","http_method":"GET","short_description":"Gets a list of yard areas","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to fetch information about yard areas.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not Found","metadata":null},{"code":400,"description":"Invalid request.","metadata":null},{"code":500,"description":"Server crashed.","metadata":null}],"params":[{"name":"terminal_id","full_name":"terminal_id","description":"\n\u003cp\u003eFilter for a specific terminal. You must pass the terminal’s Octopi ID.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"area_type","full_name":"area_type","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003egrid\u003c/code\u003e, \u003ccode\u003eheap\u003c/code\u003e, \u003ccode\u003ewarehouse\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/yard_areas.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\" -d '{\"terminal_id\": 5}'\n","{\n   \"yard_areas\" : [\n      {\n         \"name\" : \"A\",\n         \"current_containers_count\" : 73,\n         \"area_type\" : \"grid\",\n         \"capacity\" : \"20x9x2\",\n         \"id\" : 455,\n         \"current_teu_count\" : 146,\n         \"description\" : \"Area used for reefers\",\n         \"terminal\" : {\n            \"name\" : \"Port Miami\",\n            \"id\" : 2\n         }\n      }\n   ],\n   \"actions\" : {\n     \"last\" : {\n       \"url\" : \"https://app.octopi.co/api/v1/yard_areas.json?page=1\",\n       \"method\" : \"GET\"\n     },\n     \"next\" : {\n       \"url\" : \"https://app.octopi.co/api/v1/yard_areas.json?page=2\",\n       \"method\" : \"GET\"\n     },\n     \"previous\" : {\n       \"url\" : \"https://app.octopi.co/api/v1/yard_areas.json?page=0\",\n       \"method\" : \"GET\"\n     },\n     \"index\" : {\n       \"method\" : \"GET\",\n       \"url\" : \"https://app.octopi.co/api/v1/yard_areas\"\n     }\n   }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/yard_areas/show","name":"show","apis":[{"api_url":"/api/v1/yard_areas/:id.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to fetch information about a yard area.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not Found","metadata":null},{"code":400,"description":"Invalid request.","metadata":null},{"code":500,"description":"Server crashed.","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/yard_areas/54321.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n"," {\n  \"yard_area\": {\n   \"id\": 54321,\n   \"name\": \"A\",\n   \"description\": \"Area used for reefers\",\n   \"area_type\": \"grid\",\n   \"capacity\": \"20x9x2\",\n   \"terminal\": {\"id\": 2, \"name\": \"Port Miami\"},\n   \"current_containers_count\": 73,\n   \"current_teu_count\": 146,\n   \"yard_slots\": [\n      {\n        \"id\": 5,\n        \"custom_name\": \"slot 1\",\n        \"description\": nil,\n        \"row\": 1,\n        \"depth\": 1,\n        \"height\": 1,\n        \"lat\": nil,\n        \"lng\": nil,\n        \"enabled\": true\n      }\n    ]\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"bill_of_ladings-line_items":{"doc_url":"/api/v1/documentation/1.0/bill_of_ladings-line_items","id":"bill_of_ladings-line_items","api_url":"/api/v1","name":"Bill_of_ladings::Line_items","short_description":"This resource allows you to fetch a list of line items on bill of ladings.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/bill_of_ladings-line_items/index","name":"index","apis":[{"api_url":"/api/v1/bill_of_ladings/:id/line_items.json","http_method":"GET","short_description":"Returns a list of line items on a Bill of Lading.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"page","full_name":"page","description":"\n\u003cp\u003eIndicates which page of results to fetch. The default is 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed per page. This default is 10 and the maximum allowed value is 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/bill_of_ladings/:id/line_items.json\" -X GET -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n","{\n  \"line_items\": [\n    {\n      \"id\": 1211,\n      \"container_id\": 1902,\n      \"quantity\": 1.0,\n      \"container_number\": \"ABC123\",\n      \"cargo_type\": \"container\",\n      \"container_type_label\": \"20DV\",\n      \"container_weight\": 4000,\n      \"container_weight_unit\": \"kg\"\n      \"flex_fields\": [\n        {\n          \"label\": \"flex_field_label\",\n          \"value\": \"flex_field_value\"\n        }\n      ]\n    }\n  ],\n  \"actions\" : {\n    \"next_page\" : {\n        \"method\" : \"GET\",\n        \"url\" : \"https://app.octopi.co/api/v1/bill_of_ladings/:id/line_items.json?page=2\u0026per=10\"\n    }\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/bill_of_ladings-line_items/create","name":"create","apis":[{"api_url":"/api/v1/bill_of_ladings/:id/line_items.json","http_method":"POST","short_description":"Creates a Line Item for a Bill of Lading with given ID","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"line_item","full_name":"line_item","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"container_id","full_name":"line_item[container_id]","description":"\n\u003cp\u003ean id of the container to be assigned to the BL line item, required, the container must belong to the organization\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_type_label","full_name":"line_item[container_type_label]","description":"\n\u003cp\u003eContainer Type label to be assigned to the Line Item. Can be one of the container types defined by the organization.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_weight","full_name":"line_item[container_weight]","description":"\n\u003cp\u003eWeight of the Bill of Lading line item\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a decimal number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_weight_unit","full_name":"line_item[container_weight_unit]","description":"\n\u003cp\u003eUnit to be used for the Bill of Lading weight\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"flex_fields","full_name":"line_item[flex_fields]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an Array of nested elements","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"label","full_name":"line_item[flex_fields][label]","description":"\n\u003cp\u003eThe name of the flex field\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"value","full_name":"line_item[flex_fields][value]","description":"\n\u003cp\u003eThe value of the flex field\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}]}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/bill_of_ladings/:id/line_items.json\" -d '{ \"line_item\": { \"container_id\": 123456789, \"container_type_label\": \"40DV\", \"container_weight\": 4000.0, \"container_weight_unit\": \"kg\", \"flex_fields\": [{ \"label\": \"flex_field_label\", \"value\": \"flex_field_value\"}] } }' -X POST -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n  \"id\": 38,\n  \"container_id\": 123456789,\n  \"quantity\": 1.0,\n  \"container_number\": \"OCTO1231239\",\n  \"cargo_type\": \"container\",\n  \"container_type_label\": \"40DV\",\n  \"container_weight\": 4000.0,\n  \"container_weight_unit\": \"kg\",\n  \"flex_fields\": [\n    {\n      \"label\": \"flex_field_label\",\n      \"value\": \"flex_field_value\"\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/bill_of_ladings-line_items/update","name":"update","apis":[{"api_url":"/api/v1/bill_of_ladings/:bill_of_lading_id/line_items/:id","http_method":"PATCH","short_description":"Updates one Line Item with given ID for a Bill of Lading with bill_of_lading_id","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"bill_of_lading_id","full_name":"bill_of_lading_id","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"line_item","full_name":"line_item","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"container_id","full_name":"line_item[container_id]","description":"\n\u003cp\u003eAn ID of the container that will assigned to the Line Item.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_type_label","full_name":"line_item[container_type_label]","description":"\n\u003cp\u003eContainer Type label assigned to the Line Item. Can be one of the container types defined by the organization.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_weight","full_name":"line_item[container_weight]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a decimal number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_weight_unit","full_name":"line_item[container_weight_unit]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003elb\u003c/code\u003e, \u003ccode\u003ekg\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"flex_fields","full_name":"line_item[flex_fields]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an Array of nested elements","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"label","full_name":"line_item[flex_fields][label]","description":"\n\u003cp\u003eThe name of the flex field\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"value","full_name":"line_item[flex_fields][value]","description":"\n\u003cp\u003eThe value of the flex field\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}]}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/bill_of_ladings/:bill_of_lading_id/line_items/:id.json\" -d '{ \"line_item\": { \"container_id\": 123456789, \"container_type_label\": \"40DV\", \"container_weight\": 4200.0, \"container_weight_unit\": \"kg\", \"flex_fields\": [{ \"label\": \"flex_field_label\", \"value\": \"flex_field_value\"}] } }' -X PATCH -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n  \"id\": 38,\n  \"container_id\": 123456789,\n  \"quantity\": 1.0,\n  \"container_number\": \"OCTO1231239\",\n  \"cargo_type\": \"container\",\n  \"container_type_label\": \"40DV\",\n  \"container_weight\": 4200.0,\n  \"container_weight_unit\": \"kg\",\n  \"flex_fields\": [\n    {\n      \"label\": \"flex_field_label\",\n      \"value\": \"flex_field_value\"\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/bill_of_ladings-line_items/destroy","name":"destroy","apis":[{"api_url":"/api/v1/bill_of_ladings/:bill_of_lading_id/line_items/:id","http_method":"DELETE","short_description":"Deletes the given bill of lading line item","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"bill_of_lading_id","full_name":"bill_of_lading_id","description":"\n\u003cp\u003eThe bill of lading ID\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"\n\u003cp\u003eThe bill of lading line item ID\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/bill_of_ladings/:bill_of_lading_id/line_items/:id.json'\" -X DELETE -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"cargoes-holds":{"doc_url":"/api/v1/documentation/1.0/cargoes-holds","id":"cargoes-holds","api_url":"/api/v1","name":"Cargoes::Holds","short_description":"This resource allows you to list or lift holds for cargo.","full_description":"\n\u003cp\u003eOctopi allows holds to be placed on cargo.\u003c/p\u003e\n\n\u003cp\u003eA terminal operator can created has many hold types as possible to automatically or manually create holds on cargo.\u003c/p\u003e\n\n\u003cp\u003eHolds can be placed on cargo. When a cargo has a hold, it cannot be delivered to the customer (via a gate movement or a cargo stripping) or loaded on a vessel for export.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/cargoes-holds/handle_index","name":"handle_index","apis":[{"api_url":"/api/v1/cargoes/:id/holds.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Not found","metadata":null},{"code":409,"description":"Conflict","metadata":null},{"code":500,"description":"Server crashed for some reason","metadata":null}],"params":[{"name":"id","full_name":"id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["This endpoint returns a list of holds that have been placed on the cargo.\n","curl \"https://app.octopi.co/api/v1/cargoes/ID/holds.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n","{\n  \"holds\": [\n    {\n      \"lifted\": false,\n      \"applied_at\": null,\n      \"lifted_at\": null,\n      \"lifted_until\": null,\n      \"lifted_by\": null,\n      \"hold_type\": \"DETENTION HOLD\",\n      \"actions\": {\n        \"lift\": {\n          \"method\": \"PUT\",\n          \"url\": \"https://app.octopi.co/api/v1/cargoes/CARGO_ID/holds/HOLD_ID/lift.json\"\n        },\n        \"apply\": {\n          \"method\": \"PUT\",\n          \"url\": \"https://app.octopi.co/api/v1/cargoes/CARGO_ID/holds/HOLD_ID/apply.json\"\n        },\n        \"index\": {\n          \"method\": \"GET\",\n          \"url\": \"https://app.octopi.co/api/v1/cargoes/CARGO_ID/holds.json\"\n        }\n      },\n      \"id\": 51359,\n      \"reference_number\": null,\n      \"applied_by\": null\n    },\n    {\n      \"lifted_at\": null,\n      \"lifted_until\": null,\n      \"lifted_by\": null,\n      \"lifted\": false,\n      \"applied_at\": null,\n      \"applied_by\": null,\n      \"actions\": {\n        \"lift\": {\n          \"method\": \"PUT\",\n          \"url\": \"https://app.octopi.co/api/v1/cargoes/CARGO_ID/holds/HOLD_ID/lift.json\"\n        },\n        \"apply\": {\n          \"method\": \"PUT\",\n          \"url\": \"https://app.octopi.co/api/v1/cargoes/CARGO_ID/holds/HOLD_ID/apply.json\"\n        }\n      },\n      \"hold_type\": \"GATE MOVE INVOICE FEE\",\n      \"reference_number\": null,\n      \"id\": 51360\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/cargoes-holds/handle_lift","name":"handle_lift","apis":[{"api_url":"/api/v1/cargoes/:cargo_id/holds/:id/lift.json","http_method":"PUT","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Not found","metadata":null},{"code":409,"description":"Conflict","metadata":null},{"code":500,"description":"Server crashed for some reason","metadata":null}],"params":[{"name":"cargo_id","full_name":"cargo_id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["This endpoint can be used to lift a hold from a cargo. If a bill of lading\nnumber is provided, it will only lift the hold if the container is manifested on\nthe bill of lading identified by the provided id.\n","curl \"https://app.octopi.co/api/v1/cargoes/CARGO_ID/holds/HOLD_ID/lift.json\" -X PUT -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\" -d '{\"hold\": { \"reference_number\": \"ADD REFERENCE NUMBER HERE\", \"lift_until\": \"2025-10-10\", \"notes\": \"ADD LIFTED NOTE HERE\"} }'\n","{\n  \"reference_number\": \"REF123\",\n  \"actions\": {\n    \"lift\": {\n      \"method\": \"PUT\",\n      \"url\": \"https://app.octopi.co/api/v1/cargoes/CARGO_ID/holds/HOLD_ID/apply.json\"\n    },\n    \"index\": {\n      \"method\": \"GET\",\n      \"url\": \"https://app.octopi.co/api/v1/cargoes/CARGO_ID/holds.json\"\n    }\n  },\n  \"lifted_by\": null,\n  \"applied_by\": null,\n  \"hold_type_id\": 13,\n  \"hold_type\": \"CUSTOMS HOLD\",\n  \"lifted\": true,\n  \"lifted_at\": \"2016-12-01T09:46:23.738-05:00\",\n  \"applied_at\": null,\n  \"notes\": null\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/cargoes-holds/handle_apply","name":"handle_apply","apis":[{"api_url":"/api/v1/cargoes/:id/holds/:hold_id/apply.json","http_method":"PUT","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Not found","metadata":null},{"code":409,"description":"Conflict","metadata":null},{"code":500,"description":"Server crashed for some reason","metadata":null}],"params":[{"name":"id","full_name":"id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"hold_id","full_name":"hold_id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["This endpoint can be used to apply a hold to general cargo.\n","curl \"https://app.octopi.co/api/v1/cargoes/CARGO_ID/holds/HOLD_TYPE_ID/apply.json\" -X PUT -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n","{\n    \"reference_number\": \"REF123\",\n    \"actions\": {\n      \"lift\": {\n        \"method\": \"PUT\",\n        \"url\": \"https://app.octopi.co/api/v1/cargoes/CARGO_ID/holds/HOLD_ID/lift.json\"\n      },\n      \"index\": {\n        \"method\": \"GET\",\n        \"url\": \"https://app.octopi.co/api/v1/cargoes/CARGO_ID/holds.json\"\n      }\n    },\n    \"lifted_by\": null,\n    \"applied_by\": null,\n    \"hold_type_id\": 13,\n    \"hold_type\": \"CUSTOMS HOLD\",\n    \"lifted\": false,\n    \"lifted_at\": null,\n    \"applied_at\": \"2016-12-01T09:46:23.738-05:00\"\n  }\n  \n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"consignees-bill_of_ladings":{"doc_url":"/api/v1/documentation/1.0/consignees-bill_of_ladings","id":"consignees-bill_of_ladings","api_url":"/api/v1","name":"Consignees::Bill_of_ladings","short_description":"This resource returns bill of ladings linked to a consignee.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/consignees-bill_of_ladings/index","name":"index","apis":[{"api_url":"/api/v1/consignees/:consignee_id/bill_of_ladings.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis endpoint returns a list of bill of ladings associated to a consignee.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"consignee_id","full_name":"consignee_id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"voyage_number","full_name":"voyage_number","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/consignees/ID/bill_of_ladings.json?voyage_number=100SB\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n","{\n   \"bill_of_ladings\" : [\n      {\n         \"weight\" : 115825,\n         \"port_of_discharge\" : {\n            \"locode\" : \"USMIA\"\n         },\n         \"exporter_address\" : null,\n         \"remarks\" : null,\n         \"number\" : \"EEA0120461A\",\n         \"goods_description\" : \"BLUE BOTTLES OF SAND\",\n         \"port_of_loading\" : {\n            \"locode\" : \"HTPAP\"\n         },\n         \"package_type\" : {\n            \"description\" : \"PACKAGE\",\n            \"code\" : \"PK\"\n         },\n         \"shipping_marks\" : \".\",\n         \"manifest\" : {\n            \"client_identifier\" : null\n         },\n         \"cargo\" : [\n            {\n               \"number\" : \"CMAU8393439\",\n               \"storage_days\" : 0,\n               \"reefer_plugged_in_time_in_hours\" : 0,\n               \"container_type\" : \"40DV\",\n               \"cargo_type\" : \"Container\",\n               \"display_name\" : \"CMAU8393439\",\n               \"id\" : 487595\n            },\n            {\n               \"id\" : 487596,\n               \"display_name\" : \"ECMU4520712\",\n               \"reefer_plugged_in_time_in_hours\" : 0,\n               \"container_type\" : \"40DV\",\n               \"cargo_type\" : \"Container\",\n               \"number\" : \"ECMU4520712\",\n               \"storage_days\" : 0\n            },\n            {\n               \"reefer_plugged_in_time_in_hours\" : 0,\n               \"container_type\" : \"40DV\",\n               \"cargo_type\" : \"Container\",\n               \"display_name\" : \"TGHU4745107\",\n               \"id\" : 487597,\n               \"storage_days\" : 0,\n               \"number\" : \"TGHU4745107\"\n            }\n         ],\n         \"packing_list_items\" : [\n            {\n               \"has_been_stripped\" : false,\n               \"weight\" : 123,\n               \"quantity\" : 1,\n               \"id\" : 28018,\n               \"consignee_address\" : \"2 Main St.\",\n               \"stripped_quantity\" : 0,\n               \"package_type\" : {\n                  \"code\" : \"1D\",\n                  \"description\" : \"drum\"\n               },\n               \"dock_receipt_number\" : \"10120310231231\",\n               \"reference_number\" : \"TEST1231\",\n               \"volume\" : 123,\n               \"container\" : {\n                  \"number\" : \"FSCU4574900\"\n               },\n               \"description\" : \"USED CLOTHES\",\n               \"bill_of_lading\" : {\n                  \"number\" : \"NAM2943417\"\n               },\n               \"has_been_delivered\" : false,\n               \"shipping_marks\" : \"BE CAREFUL . FRAGILE.\",\n               \"consignee\" : {\n                  \"name\" : \"BLUE AZUL S.A.\"\n               }\n            }\n         ],\n         \"exporter\" : {\n            \"name\" : \"BLUE INDUSTRIES LIMITED\"\n         },\n         \"volume_in_cubic_meters\" : \"0\",\n         \"consignee\" : {\n            \"name\" : \"LES ENTERPRISES S.A.\"\n         },\n         \"consignee_address\" : null\n      },\n      {\n         \"number\" : \"EEA0120461C\",\n         \"goods_description\" : \"RUM BOTTLES\",\n         \"port_of_discharge\" : {\n            \"locode\" : \"USMIA\"\n         },\n         \"weight\" : 115825,\n         \"remarks\" : null,\n         \"exporter_address\" : null,\n         \"consignee\" : {\n            \"name\" : \"LES ENTERPRISES S.A.\"\n         },\n         \"volume_in_cubic_meters\" : \"0\",\n         \"exporter\" : {\n            \"name\" : \"BLUE INDUSTRIES LIMITED\"\n         },\n         \"consignee_address\" : null,\n         \"package_type\" : {\n            \"code\" : \"PK\",\n            \"description\" : \"PACKAGE\"\n         },\n         \"port_of_loading\" : {\n            \"locode\" : \"HTPAP\"\n         },\n         \"shipping_marks\" : \".\",\n         \"cargo\" : [\n            {\n               \"number\" : \"CAIU3702912\",\n               \"storage_days\" : 0,\n               \"id\" : 487474,\n               \"display_name\" : \"CAIU3702912\",\n               \"reefer_plugged_in_time_in_hours\" : 0,\n               \"container_type\" : \"40DV\",\n               \"cargo_type\" : \"Container\"\n            },\n            {\n               \"id\" : 487475,\n               \"reefer_plugged_in_time_in_hours\" : 10,\n               \"container_type\" : \"40RF\",\n               \"cargo_type\" : \"Container\",\n               \"display_name\" : \"CMAU0553470\",\n               \"storage_days\" : 4,\n               \"number\" : \"CMAU0553470\"\n            }\n         ],\n         \"packing_list_items\" : [],\n         \"manifest\" : {\n            \"client_identifier\" : null\n         }\n      },\n      {\n         \"number\" : \"EEA0120461B\",\n         \"goods_description\" : \"12 Barrels of wine\",\n         \"port_of_discharge\" : {\n            \"locode\" : \"USMIA\"\n         },\n         \"weight\" : 115825,\n         \"remarks\" : null,\n         \"exporter_address\" : null,\n         \"consignee\" : {\n            \"name\" : \"LES ENTERPRISES S.A.\"\n         },\n         \"volume_in_cubic_meters\" : \"0\",\n         \"exporter\" : {\n            \"name\" : \"BLUE INDUSTRIES LIMITED\"\n         },\n         \"consignee_address\" : null,\n         \"shipping_marks\" : \".\",\n         \"package_type\" : {\n            \"code\" : \"PK\",\n            \"description\" : \"PACKAGE\"\n         },\n         \"port_of_loading\" : {\n            \"locode\" : \"USPEF\"\n         },\n         \"cargo\" : [\n            {\n               \"cargo_type\" : \"Container\",\n               \"reefer_plugged_in_time_in_hours\" : 0,\n               \"container_type\" : \"40DV\",\n               \"display_name\" : \"FSCU4574900\",\n               \"id\" : 487593,\n               \"storage_days\" : 2,\n               \"number\" : \"FSCU4574900\"\n            },\n            {\n               \"id\" : 487594,\n               \"cargo_type\" : \"Container\",\n               \"reefer_plugged_in_time_in_hours\" : 0,\n               \"container_type\" : \"40DV\",\n               \"display_name\" : \"TTNU4887798\",\n               \"storage_days\" : 2,\n               \"number\" : \"TTNU4887798\"\n            }\n         ],\n         \"packing_list_items\" : [],\n         \"manifest\" : {\n            \"client_identifier\" : null\n         }\n      }\n   ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"consignees-packing_list_items":{"doc_url":"/api/v1/documentation/1.0/consignees-packing_list_items","id":"consignees-packing_list_items","api_url":"/api/v1","name":"Consignees::Packing_list_items","short_description":"This resource returns packing list items linked to a consignee.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/consignees-packing_list_items/index","name":"index","apis":[{"api_url":"/api/v1/consignees/:consignee_id/packing_list_items.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis endpoint returns a list of bill of ladings associated to a consignee.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"consignee_id","full_name":"consignee_id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"voyage_number","full_name":"voyage_number","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/consignees/ID/packing_list_items.json?voyage_number=100SB\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n",""],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"containers-damages":{"doc_url":"/api/v1/documentation/1.0/containers-damages","id":"containers-damages","api_url":"/api/v1","name":"Containers::Damages","short_description":"This resource allows you to view and create container damages in Octopi.","full_description":"\n\u003cp\u003eOctopi allows damages to be reported on containers.\u003c/p\u003e\n\n\u003cp\u003eA user can report as many damages as needed for a container.\u003c/p\u003e\n\n\u003cp\u003eWhen a container is reported as damaged, it cannot leave the terminal until the repair is completed. Notification emails will be sent for these events based on the organization settings.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/containers-damages/index","name":"index","apis":[{"api_url":"/api/v1/containers/:container_number/damages.json","http_method":"GET","short_description":"Returns a list of Container Damages.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not found.","metadata":null},{"code":500,"description":"Server crashed for some reason.","metadata":null}],"params":[{"name":"container_number","full_name":"container_number","description":"\n\u003cp\u003eAllows you to search Containers by number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["This API endpoint allows you to get the reported damages for a Container.\n","curl \"https://app.octopi.co/api/v1/containers/:container_number/damages\" -X GET -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n  \"damages\": [\n    {\n      \"id\": 133535,\n      \"remarks\": \"Big hole in the side.\",\n      \"reported_by\": \"System\",\n      \"reported_at\": \"2022-06-22T15:40:05Z\",\n      \"needs_repair\": true,\n      \"repair\": {\n        \"status\": \"waiting\"\n      }\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/containers-damages/show","name":"show","apis":[{"api_url":"/api/v1/containers/:container_number/damages/:id.json","http_method":"GET","short_description":"Returns a Container Damage.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not found.","metadata":null},{"code":500,"description":"Server crashed for some reason.","metadata":null}],"params":[{"name":"container_number","full_name":"container_number","description":"\n\u003cp\u003eAllows you to search Containers by number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"\n\u003cp\u003eAllows you to search Container Damages by ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["This API endpoint allows you to get a reported damage for a Container.\n","curl \"https://app.octopi.co/api/v1/containers/:container_number/damages/:id\" -X GET -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n  \"damage\": {\n    \"id\": 133535,\n    \"remarks\": \"Big hole in the side.\",\n    \"reported_by\": \"System\",\n    \"reported_at\": \"2022-06-22T15:40:05Z\",\n    \"needs_repair\": true,\n    \"repair\": {\n      \"status\": \"waiting\"\n    }\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/containers-damages/create","name":"create","apis":[{"api_url":"/api/v1/containers/:container_number/damages.json","http_method":"POST","short_description":"Creates a Container Damage.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not found.","metadata":null},{"code":500,"description":"Server crashed for some reason.","metadata":null}],"params":[{"name":"container_number","full_name":"container_number","description":"\n\u003cp\u003eAllows you to search Containers by number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"damage","full_name":"damage","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"remarks","full_name":"damage[remarks]","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"damaged_at","full_name":"damage[damaged_at]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"needs_repair","full_name":"damage[needs_repair]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["This API endpoint allows you to report a damage for a Container.\n","curl \"https://app.octopi.co/api/v1/containers/:container_number/damages\" -X POST \\\n    -H \"Accept: application/json\" \\\n    -H \"Content-Type: application/json\" \\\n    -H \"Authorization: Token token=YOUR TOKEN HERE\" \\\n    -d '{\n        \"damage\": {\n            \"remarks\": \"Big hole in the side.\",\n            \"damaged_at\": null,\n            \"needs_repair\": true\n        }\n    }'\n","{\n  \"damage\": {\n    \"id\": 133535,\n    \"remarks\": \"Big hole in the side.\",\n    \"reported_by\": \"System\",\n    \"reported_at\": \"2022-06-22T15:40:05Z\",\n    \"needs_repair\": true,\n    \"repair\": {\n      \"status\": \"waiting\"\n    }\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/containers-damages/update","name":"update","apis":[{"api_url":"/api/v1/containers/:container_number/damages/:id","http_method":"PATCH","short_description":"Starts and completes the repair for a Container Damage.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not found.","metadata":null},{"code":500,"description":"Server crashed for some reason.","metadata":null}],"params":[{"name":"container_number","full_name":"container_number","description":"\n\u003cp\u003eAllows you to search Containers by number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"\n\u003cp\u003eAllows you to search Container Damages by ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"repair","full_name":"repair","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"status","full_name":"repair[status]","description":"\n\u003cp\u003eThe status of the repair. Can be ‘started’ or ‘completed’.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"status_changed_at","full_name":"repair[status_changed_at]","description":"\n\u003cp\u003eThe date and time the status was changed. Defaults to the current time.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"notes","full_name":"repair[notes]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["This API endpoint allows you to start and complete repairs for a damage.\n","curl --location --request PATCH 'https://app.octopi.co/api/v1/containers/:container_number/damages/:id' \\\n--header \"Authorization: Token token=YOUR TOKEN HERE\" \\\n--header 'Content-Type: application/json' \\\n--data-raw '{\n    \"repair\": {\n        \"status_changed_at\": null,\n        \"status\": \"started\"\n    }\n}'\n","{\n  \"damage\": {\n    \"id\": 133535,\n    \"remarks\": \"Big hole in the side.\",\n    \"reported_by\": \"System\",\n    \"reported_at\": \"2022-06-22T15:40:05Z\",\n    \"needs_repair\": true,\n    \"repair\": {\n      \"status\": \"started\",\n      \"started_at\": \"2022-06-22T17:58:05Z\"\n    }\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"containers-extra_attributes":{"doc_url":"/api/v1/documentation/1.0/containers-extra_attributes","id":"containers-extra_attributes","api_url":"/api/v1","name":"Containers::Extra_attributes","short_description":"This resource allows you modify extra_attributes for containers in Octopi.","full_description":"\n\u003cp\u003eThis resource allows you modify extra_attributes for containers in Octopi.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/containers-extra_attributes/update","name":"update","apis":[{"api_url":"/api/v1/containers/:number/extra_attributes/:label","http_method":"PUT","short_description":"Updates a Container","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis resource allows you modify extra_attributes for containers in Octopi.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"label","full_name":"label","description":"\n\u003cp\u003eLabel of the extra attribute\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"value","full_name":"value","description":"\n\u003cp\u003eValue of the extra attribute to change\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/containers/NUMBER/extra_attributes/extra_attribute_label\" \\\n     -X PUT \\\n     \"Authorization: Token token=ADD TOKEN HERE\" \\\n     -d '{ \"value\": \"FLEX_FIELD_VALUE\" }'\n","\"value\": \"EXTRA_ATTRIBUTE_VALUE\" "],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"containers-flex_fields":{"doc_url":"/api/v1/documentation/1.0/containers-flex_fields","id":"containers-flex_fields","api_url":"/api/v1","name":"Containers::Flex_fields","short_description":"[DEPRECATED] This resource allows you modify flex fields for containers in Octopi.","full_description":"\n\u003cp\u003e[DEPRECATED] Please use the Containers API to manage flex flex fields for containers. This resource allows you to access flex fields for containers in Octopi\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/containers-flex_fields/update","name":"update","apis":[{"api_url":"/api/v1/containers/:number/flex_fields/:label","http_method":"PUT","short_description":"Updates a Container","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003e[DEPRECATED] Please use Containers API to manage flex flex fields for containers. This resource allows you to access flex fields for containers in Octopi.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"number","full_name":"number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"label","full_name":"label","description":"\n\u003cp\u003eLabel of the flex field\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"value","full_name":"value","description":"\n\u003cp\u003eValue of the flex field to change\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/containers/NUMBER/flex_fields/flex_field_label\" \\\n     -X PUT \\\n     \"Authorization: Token token=ADD TOKEN HERE\" \\\n     -d '{ \"value\": \"FLEX_FIELD_VALUE\" }'\n","\"value\": \"FLEX_FIELD_VALUE\" "],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"containers-holds":{"doc_url":"/api/v1/documentation/1.0/containers-holds","id":"containers-holds","api_url":"/api/v1","name":"Containers::Holds","short_description":"This resource allows you to list or lift holds for a container.","full_description":"\n\u003cp\u003eOctopi allows holds to be placed on containers.\u003c/p\u003e\n\n\u003cp\u003eA terminal operator can created has many hold types as possible to automatically or manually create holds on containers.\u003c/p\u003e\n\n\u003cp\u003eHolds can be placed on containers. When a container has a hold, it cannot be delivered to the customer (via a gate movement or a container stripping) or loaded on a vessel for export.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/containers-holds/handle_index","name":"handle_index","apis":[{"api_url":"/api/v1/containers/:container_number/holds.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Not found","metadata":null},{"code":409,"description":"Conflict","metadata":null},{"code":500,"description":"Server crashed for some reason","metadata":null}],"params":[{"name":"container_number","full_name":"container_number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["This endpoint returns a list of holds that have been placed on the container.","curl \"https://app.octopi.co/api/v1/containers/ADD CONTAINER NUMBER HERE/holds.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n","{\n  \"holds\": [\n    {\n      \"lifted\": false,\n      \"applied_at\": null,\n      \"lifted_at\": null,\n      \"lifted_until\": null,\n      \"lifted_by\": null,\n      \"hold_type\": \"DETENTION HOLD\",\n      \"actions\": {\n        \"lift\": {\n          \"method\": \"PUT\",\n          \"url\": \"https://app.octopi.co/api/v1/containers/BMOU4286229/holds/51359/lift.json\"\n        },\n        \"index\": {\n          \"method\": \"GET\",\n          \"url\": \"https://app.octopi.co/api/v1/containers/BMOU4286229/holds.json\"\n        }\n      },\n      \"id\": 51359,\n      \"reference_number\": null,\n      \"applied_by\": null\n    },\n    {\n      \"lifted_at\": null,\n      \"lifted_until\": null,\n      \"lifted_by\": null,\n      \"lifted\": false,\n      \"applied_at\": null,\n      \"applied_by\": null,\n      \"actions\": {\n        \"index\": {\n          \"method\": \"GET\",\n          \"url\": \"https://app.octopi.co/api/v1/containers/BMOU4286229/holds.json\"\n        },\n        \"lift\": {\n          \"method\": \"PUT\",\n          \"url\": \"https://app.octopi.co/api/v1/containers/BMOU4286229/holds/51360/lift.json\"\n        }\n      },\n      \"hold_type\": \"GATE MOVE INVOICE FEE\",\n      \"reference_number\": null,\n      \"id\": 51360\n    },\n    {\n      \"applied_by\": null,\n      \"actions\": {\n        \"index\": {\n          \"url\": \"https://app.octopi.co/api/v1/containers/BMOU4286229/holds.json\",\n          \"method\": \"GET\"\n        },\n        \"lift\": {\n          \"url\": \"https://app.octopi.co/api/v1/containers/BMOU4286229/holds/51361/lift.json\",\n          \"method\": \"PUT\"\n        }\n      },\n      \"hold_type\": \"CUSTOMS INVOICE FEE\",\n      \"reference_number\": null,\n      \"id\": 51361,\n      \"lifted_at\": null,\n      \"lifted_until\": null,\n      \"lifted_by\": null,\n      \"lifted\": false,\n      \"applied_at\": null\n    },\n    {\n      \"lifted_at\": null,\n      \"lifted_until\": null,\n      \"lifted_by\": null,\n      \"lifted\": false,\n      \"applied_at\": null,\n      \"applied_by\": null,\n      \"actions\": {\n        \"index\": {\n          \"url\": \"https://app.octopi.co/api/v1/containers/BMOU4286229/holds.json\",\n          \"method\": \"GET\"\n        },\n        \"lift\": {\n          \"method\": \"PUT\",\n          \"url\": \"https://app.octopi.co/api/v1/containers/BMOU4286229/holds/51362/lift.json\"\n        }\n      },\n      \"hold_type\": \"PORT AUTHORITY INVOICE FEE\",\n      \"reference_number\": null,\n      \"id\": 51362\n    },\n    {\n      \"applied_by\": null,\n      \"actions\": {\n        \"index\": {\n          \"method\": \"GET\",\n          \"url\": \"https://app.octopi.co/api/v1/containers/BMOU4286229/holds.json\"\n        },\n        \"lift\": {\n          \"method\": \"PUT\",\n          \"url\": \"https://app.octopi.co/api/v1/containers/BMOU4286229/holds/51363/lift.json\"\n        }\n      },\n      \"hold_type\": \"SPECIAL HOLD\",\n      \"reference_number\": null,\n      \"id\": 51363,\n      \"lifted_at\": null,\n      \"lifted_by\": null,\n      \"lifted_until\": null,\n      \"lifted\": false,\n      \"applied_at\": null\n    },\n    {\n      \"lifted_at\": null,\n      \"lifted_by\": null,\n      \"lifted_until\": null,\n      \"lifted\": false,\n      \"applied_at\": null,\n      \"applied_by\": null,\n      \"actions\": {\n        \"index\": {\n          \"url\": \"https://app.octopi.co/api/v1/containers/BMOU4286229/holds.json\",\n          \"method\": \"GET\"\n        },\n        \"lift\": {\n          \"url\": \"https://app.octopi.co/api/v1/containers/BMOU4286229/holds/51364/lift.json\",\n          \"method\": \"PUT\"\n        }\n      },\n      \"hold_type\": \"MAINTENANCE HOLD\",\n      \"reference_number\": null,\n      \"id\": 51364\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/containers-holds/handle_lift","name":"handle_lift","apis":[{"api_url":"/api/v1/containers/:container_number/holds/:id/lift.json","http_method":"PUT","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Not found","metadata":null},{"code":409,"description":"Conflict","metadata":null},{"code":500,"description":"Server crashed for some reason","metadata":null}],"params":[{"name":"container_number","full_name":"container_number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["This endpoint can be used to lift a hold from a container.\n","curl \"https://app.octopi.co/api/v1/containers/ADD CONTAINER NUMBER HERE/holds/ADD HOLD ID HERE/lift.json\" -X PUT -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\" -d '{\"hold\": { \"reference_number\": \"ADD REFERENCE NUMBER HERE\", \"lift_until\": \"2025-10-10\", \"notes\": \"ADD LIFTED NOTE HERE\"} }'\n","{\n  \"reference_number\": \"REF123\",\n  \"actions\": {\n    \"lift\": {\n      \"method\": \"PUT\",\n      \"url\": \"https://app.octopi.co/api/v1/containers/BMOU4286229/holds/51363/lift.json\"\n    },\n    \"index\": {\n      \"method\": \"GET\",\n      \"url\": \"https://app.octopi.co/api/v1/containers/BMOU4286229/holds.json\"\n    }\n  },\n  \"lifted_by\": null,\n  \"applied_by\": null,\n  \"hold_type_id\": 13,\n  \"hold_type\": \"CUSTOMS HOLD\",\n  \"lifted\": true,\n  \"lifted_at\": \"2016-12-01T09:46:23.738-05:00\",\n  \"applied_at\": null,\n  \"notes\": null\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/containers-holds/handle_apply","name":"handle_apply","apis":[{"api_url":"/api/v1/containers/:container_number/holds/:hold_type_id/apply.json","http_method":"PUT","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Not found","metadata":null},{"code":409,"description":"Conflict","metadata":null},{"code":500,"description":"Server crashed for some reason","metadata":null}],"params":[{"name":"container_number","full_name":"container_number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["This endpoint can be used to apply a hold to a container.\n","curl \"https://app.octopi.co/api/v1/containers/CONTAINER_NUMBER/holds/HOLD_TYPE_ID/apply.json\" -X PUT -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n","{}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"containers-movements":{"doc_url":"/api/v1/documentation/1.0/containers-movements","id":"containers-movements","api_url":"/api/v1","name":"Containers::Movements","short_description":"This resource allows you to fetch information about movements.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/containers-movements/index","name":"index","apis":[{"api_url":"/api/v1/containers/:container_number/movements.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eReturns movements for a particular container.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":500,"description":"Server Error.","metadata":null}],"params":[{"name":"container_number","full_name":"container_number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"arrival_voyage_number","full_name":"arrival_voyage_number","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/containers/:container_number/movements.json?arrival_voyage_number=1100SB\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n","{\n    \"movements\": [\n        {\n            \"movement_type\": \"manifest\",\n            \"moved_at\": \"2017-10-21T14:26:35Z\",\n            \"bill_of_lading_numbers\": [\n              \"BAQPEV17549\",\n              \"BAQPEV17550\",\n              \"BAQPEV17551\"\n            ],\n            \"user\": {\n                \"name\": null,\n                \"email\": null\n            },\n            \"status\": \"full\",\n            \"source_type\": \"ShippingLine\",\n            \"source\": {\n                \"name\": \"ANTILLEAN MARINE SHIPPING  CORP\"\n            },\n            \"destination_type\": \"Voyage\",\n            \"destination\": {\n                \"name\": \"Voyage: Tango III 055S\"\n            },\n            \"container\": {\n                \"number\": \"123\"\n            },\n            \"original_container_seal\": [\"123\"],\n            \"new_container_seals\": [\n              \"123\",\n              \"456\"\n            ],\n            \"stuffed_container_seals\": [\n              \"123\",\n              \"456\"\n            ],\n            \"truck\": {\n                \"license_plate\": null,\n                \"number\": null,\n                \"trucking_company\": {\n                    \"name\": null\n                }\n            },\"arrival_voyage\": {\n              \"id\":12213,\n              \"number\":\"410 S\",\n              \"status\":\"departed\",\n              \"last_port_of_call\": {\n                \"name\":\"MIAMI\",\n                \"locode\":\"USMIA\"\n              },\n              \"next_port_of_call\":{\n                \"name\":null,\n                \"locode\":null\n              },\n              \"captain\":{\n                \"name\":\"\"\n              },\n              \"agent\":{\n                \"name\":null\n              },\n              \"number_of_tug_boats\":0,\n              \"arrival_number_of_tug_boats\":null,\n              \"departure_number_of_tug_boats\":0,\n              \"estimated_time_of_anchorage\":\"2017-12-20T08:00:00Z\",\n              \"actual_time_of_anchorage\":\"2017-12-20T11:30:00Z\",\n              \"actual_time_of_pilot_boarded\":\"2017-12-20T12:56:00Z\",\n              \"actual_time_of_berth\":\"2017-12-20T13:38:00Z\",\n              \"actual_time_of_customs_clearance\":\"2017-12-20T14:20:00Z\",\n              \"actual_time_of_departure\":\"2017-12-21T01:55:00Z\",\n              \"closing_comments\":null,\n              \"display_name\":\"Habib Express 410 S\",\n              \"actual_time_of_departure_pilot_boarded\":\"2017-12-21T01:50:00Z\",\n              \"estimated_time_of_departure\":null,\n              \"created_at\":\"2017-12-18T14:26:56Z\",\n              \"updated_at\":\"2017-12-21T15:47:52Z\",\n              \"ship\":{\n                \"name\":\"Habib Express\",\n                \"imo\":\"9196230\",\n                \"call_sign\":\"3FGW5\",\n                \"vessel_type\":\"Container\",\n                \"loa\":\"90.6m × 13.85m\",\n                \"flag\":null,\"gross_tonnage\":2035,\n                \"net_tonnage\":0\n              },\n              \"vessel\":{\n                \"name\":\"Habib Express\",\n                \"imo\":\"9196230\",\n                \"call_sign\":\"3FGW5\",\n                \"vessel_type\":\"Container\",\n                \"loa\":\"90.6m × 13.85m\",\n                \"flag\":null,\n                \"gross_tonnage\":2035,\n                \"net_tonnage\":0\n              },\n              \"assigned_berth_area\":{\n                \"name\":\"NORTH PIER B1\"\n              },\n              \"assigned_yard_area\":{\n                \"name\":null\n              },\n              \"discharge_terminal\":{\n                \"name\":\"CPS Yard\"\n              },\n              \"arrival_pilot\":{\n                \"name\":null\n              },\n              \"departure_pilot\":{\n                \"name\":null\n              },\n              \"tax_date\":null\n            }\n          }\n        }\n      ]\n    }\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"containers-strips":{"doc_url":"/api/v1/documentation/1.0/containers-strips","id":"containers-strips","api_url":"/api/v1","name":"Containers::Strips","short_description":null,"full_description":"","version":"1.0","formats":null,"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/containers-strips/update","name":"update","apis":[{"api_url":"/api/v1/containers/:container_number/strip","http_method":"PUT","short_description":"Creates a full stripping movement on the container","deprecated":null}],"formats":null,"full_description":"","errors":[],"params":[{"name":"container_number","full_name":"container_number","description":"\n\u003cp\u003eThe container number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"occurred_at","full_name":"occurred_at","description":"\n\u003cp\u003eDate time of the stripping movement. We will use current date and time if empty.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a DateTime","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl -v -X PUT \\\\\n  -H \"Accept: application/json\" \\\\\n  -H \"Content-Type: application/json\" \\\\\n  -H \"Authorization: Token token=YOURTOKEN\" \\\\\n  \"https://app.octopi.co/api/v1/containers/CONTAINER_NUMBER/strip\"\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":null,"deprecated":null},"containers-stuffs":{"doc_url":"/api/v1/documentation/1.0/containers-stuffs","id":"containers-stuffs","api_url":"/api/v1","name":"Containers::Stuffs","short_description":null,"full_description":"","version":"1.0","formats":null,"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/containers-stuffs/update","name":"update","apis":[{"api_url":"/api/v1/containers/:container_number/stuff","http_method":"PUT","short_description":"Creates a full stuffing movement on the container","deprecated":null}],"formats":null,"full_description":"","errors":[],"params":[{"name":"container_number","full_name":"container_number","description":"\n\u003cp\u003eThe container number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"occurred_at","full_name":"occurred_at","description":"\n\u003cp\u003ewhen stuffing occurred, will use current time if not provided\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a DateTime","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"goods","full_name":"goods","description":"\n\u003cp\u003egoods stuffed into container\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"seal1","full_name":"seal1","description":"\n\u003cp\u003eseal-1 added when stuffing is completed\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"seal2","full_name":"seal2","description":"\n\u003cp\u003eseal-2 value when stuffing is completed\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"seal3","full_name":"seal3","description":"\n\u003cp\u003eseal-3 value when stuffing is completed\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"seal4","full_name":"seal4","description":"\n\u003cp\u003eseal-4 value when stuffing is completed\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"remarks","full_name":"remarks","description":"\n\u003cp\u003eremarks for stuffing\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"booking","full_name":"booking","description":"\n\u003cp\u003ebooking number provided by the truck for stuffing\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"consignee","full_name":"consignee","description":"\n\u003cp\u003econsignee name that will receive the goods stuffed\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck","full_name":"truck","description":"\n\u003cp\u003elicense plate of the truck from which container gets stuffed\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"weight","full_name":"weight","description":"\n\u003cp\u003etotal weight of the container and its cargo. Uses the default weight unit that is configured for your organization. Weights will not be automatically converted if they are entered using a different weight unit.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl -v -X PUT \\\\\n  -H \"Accept: application/json\"  \\\\\n  -H \"Content-Type: application/json\" \\\\\n  -H \"Authorization: Token token=YOUR_TOKEN\" \\\\\n  -d'{\n        \"goods\":\"linux laptops\",\n        \"seal1\":\"SEAL1\",\n        \"seal2\":\"SEAL2\",\n        \"seal3\":\"SEAL3\",\n        \"seal4\":\"SEAL4\",\n        \"remarks\":\"remarks for stuffing\",\n        \"booking\":\"BOOKING123\",\n        \"consignee\":\"APPLE Inc\",\n        \"truck\":\"TR2904\",\n        \"weight\":2000.34\n      }' \\\\\n  \"https://app.octopi.co/api/v1/containers/CONTAINER_NUMBER/stuff\"\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":null,"deprecated":null},"containers-tags":{"doc_url":"/api/v1/documentation/1.0/containers-tags","id":"containers-tags","api_url":"/api/v1","name":"Containers::Tags","short_description":"This resource allows you to apply tags to containers in Octopi.","full_description":"\n\u003cp\u003eThis resource allows you to apply tags to containers in Octopi. If the tag doesn’t exist in Octopi, it will be created.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/containers-tags/create","name":"create","apis":[{"api_url":"/api/v1/containers/:container_number/tags.json","http_method":"POST","short_description":"Apply tags to containers in Octopi.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to apply tags to containers.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not found.","metadata":null},{"code":500,"description":"Server crashed for some reason.","metadata":null}],"params":[{"name":"tags","full_name":"tags","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of any type","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/containers/:container_number/tags.json\" -X POST -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\" -d '{\"tags\": [\"TAG1\", \"TAG2\"]}'\n","{\n  \"container\": {\n    \"number\": \"CONTAINER_NUMBER\",\n    \"tags\": [\"TAG1\", \"TAG2\"]\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"containers-terminal_services":{"doc_url":"/api/v1/documentation/1.0/containers-terminal_services","id":"containers-terminal_services","api_url":"/api/v1","name":"Containers::Terminal_services","short_description":"Terminal Services","full_description":"\n\u003cp\u003eTerminal service can be applied to any container. It also can have a custom value and record of start and end times.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/containers-terminal_services/index","name":"index","apis":[{"api_url":"/api/v1/containers/:container_number/terminal_services.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eReturns a list of terminal services applied to the container.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not found.","metadata":null},{"code":500,"description":"Server crashed for some reason.","metadata":null}],"params":[{"name":"container_number","full_name":"container_number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/containers/:container_number/terminal_services.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=TOKEN\"\n","{\n  \"actions\": {\n      \"index\": {\n          \"method\": \"GET\",\n          \"url\": \"https://app.octopi.co/api/v1/containers/:container_number/terminal_services\"\n      }\n  },\n  \"terminal_services\": [\n      {\n          \"name\": \"AQI 20' Full Strip MAX\",\n          \"description\": \"AQI 20' Full Strip MAX\",\n          \"custom_value\": {\n            \"type_name\": \"number\",\n            \"name\": \"Count\",\n            \"short_name\": \"ANBPLS\",\n            \"value\": \"28.0\"\n          },\n          \"started_at\": \"2021-12-28T13:59:00-05:00\",\n          \"ended_at\": \"2022-01-25T14:00:00-05:00\"\n      }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"containers-weights":{"doc_url":"/api/v1/documentation/1.0/containers-weights","id":"containers-weights","api_url":"/api/v1","name":"Containers::Weights","short_description":"This resource allows you to update container gross weight in Octopi.","full_description":"\n\u003cp\u003eThis resource allows you to report the container gross weight in Octopi.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/containers-weights/create","name":"create","apis":[{"api_url":"/api/v1/containers/:container_number/weights.json","http_method":"POST","short_description":"Updates a container gross weight.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to update the container gross weight.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not found.","metadata":null},{"code":500,"description":"Server crashed for some reason.","metadata":null}],"params":[{"name":"container_weight","full_name":"container_weight","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"gross_weight","full_name":"container_weight[gross_weight]","description":"\n\u003cp\u003eProvide gross weight of container here.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"weight_unit","full_name":"container_weight[weight_unit]","description":"\n\u003cp\u003eThis parameter is required if it is different than the organization weight unit preference.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003ekg\u003c/code\u003e, \u003ccode\u003elb\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/containers/:container_number/weights.json\" -X POST -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\" -d '{\"container_weight\":{\"gross_weight\": \"50000.98\", \"weight_unit\": \"lb\"}}'\n","{\n  \"container\": {\n    \"number\": \"CONTAINER_NUMBER\",\n    \"container_weight\": {\n      \"weight_unit\": \"lb\",\n      \"gross_weight\": \"50000.98\",\n      \"created_at\": \"2021-08-13T16:50:26Z\",\n      \"user\": \"System\"\n    }\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"general_cargoes-flex_fields":{"doc_url":"/api/v1/documentation/1.0/general_cargoes-flex_fields","id":"general_cargoes-flex_fields","api_url":"/api/v1","name":"General_cargoes::Flex_fields","short_description":"This resource allows you modify flex fields for general_cargo in Octopi.","full_description":"\n\u003cp\u003e[DEPRECATED] Please use the General Cargo API to manage flex flex fields for general cargo. This resource allows you to access flex fields for general cargo in Octopi\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/general_cargoes-flex_fields/update","name":"update","apis":[{"api_url":"/api/v1/general_cargoes/:id/flex_fields/:label","http_method":"PUT","short_description":"Updates a specific general cargo","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis resource allows you to access flex fields for general cargo in Octopi.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"label","full_name":"label","description":"\n\u003cp\u003eLabel of the flex field\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"value","full_name":"value","description":"\n\u003cp\u003eValue of the flex field to change\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/general_cargoes/ID/flex_fields/flex_field_label -X PUT\n\"Authorization: Token token=ADD TOKEN HERE\" -d '{ \"value\": \"FLEX_FIELD_VALUE\" }'\n","\"value\": \"FLEX_FIELD_VALUE\" "],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"general_cargoes-terminal_services":{"doc_url":"/api/v1/documentation/1.0/general_cargoes-terminal_services","id":"general_cargoes-terminal_services","api_url":"/api/v1","name":"General_cargoes::Terminal_services","short_description":"Terminal Services","full_description":"\n\u003cp\u003eTerminal service can be applied to general cargo. It also can have a custom value and record of start and end times.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/general_cargoes-terminal_services/index","name":"index","apis":[{"api_url":"/api/v1/general_cargoes/:general_cargo_id/terminal_services.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eReturns a list of terminal services applied to the cargo.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not found.","metadata":null},{"code":500,"description":"Server crashed for some reason.","metadata":null}],"params":[{"name":"container_number","full_name":"container_number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/general_cargoes/:general_cargo_id/terminal_services.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=TOKEN\"\n","{\n  \"actions\": {\n      \"index\": {\n          \"method\": \"GET\",\n          \"url\": \"https://app.octopi.co/api/v1/general_cargoes/:id/terminal_services\"\n      }\n  },\n  \"terminal_services\": [\n      {\n          \"name\": \"AQI 20' Full Strip MAX\",\n          \"description\": \"AQI 20' Full Strip MAX\",\n          \"custom_value\": {\n            \"type_name\": \"number\",\n            \"name\": \"Count\",\n            \"short_name\": \"ANBPLS\",\n            \"value\": \"28.0\"\n          },\n          \"started_at\": \"2021-12-28T13:59:00-05:00\",\n          \"ended_at\": \"2022-01-25T14:00:00-05:00\"\n      }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"general_cargoes-weights":{"doc_url":"/api/v1/documentation/1.0/general_cargoes-weights","id":"general_cargoes-weights","api_url":"/api/v1","name":"General_cargoes::Weights","short_description":"This resource allows you to update general cargo gross weight in Octopi.","full_description":"\n\u003cp\u003eThis resource allows you to report the general cargo gross weight in Octopi.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/general_cargoes-weights/create","name":"create","apis":[{"api_url":"/api/v1/general_cargoes/:general_cargo_id/weights.json","http_method":"POST","short_description":"Updates a general cargo gross weight.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to update the general cargo gross weight.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not found.","metadata":null},{"code":500,"description":"Server crashed for some reason.","metadata":null}],"params":[{"name":"general_cargo_weight","full_name":"general_cargo_weight","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"gross_weight","full_name":"general_cargo_weight[gross_weight]","description":"\n\u003cp\u003eProvide gross weight of general cargo here.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"weight_unit","full_name":"general_cargo_weight[weight_unit]","description":"\n\u003cp\u003eThis parameter is required if it is different than the organization weight unit preference.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003ekg\u003c/code\u003e, \u003ccode\u003elb\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/general_cargoes/:id/weights.json\" -X POST -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\" -d '{\"general_cargo_weight\":{\"gross_weight\": \"50000.98\", \"weight_unit\": \"lb\"}}'\n","{\n  \"general_cargo\": {\n    \"id\": \"GENERAL CARGO ID\",\n    \"goods_description\": \"GOODS DESCRIPTION\"\n    \"general_cargo_weight\": {\n      \"weight_unit\": \"lb\",\n      \"gross_weight\": \"50000.98\",\n      \"created_at\": \"2021-08-13T16:50:26Z\",\n      \"user\": \"System\"\n    }\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"load_lists-load_list_items":{"doc_url":"/api/v1/documentation/1.0/load_lists-load_list_items","id":"load_lists-load_list_items","api_url":"/api/v1","name":"Load_lists::Load_list_items","short_description":"This resource allows you to create or delete dynamic load list items in Octopi.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/load_lists-load_list_items/index","name":"index","apis":[{"api_url":"/api/v1/load_lists/:load_list_id/load_list_items.json","http_method":"GET","short_description":"Retrieves the list of load list items for a specified load list.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"load_list_id","full_name":"load_list_id","description":"\n\u003cp\u003eOctopi ID of the load list.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/load_lists/LOAD_LIST_ID/load_list_items' \\\n  -X 'GET' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n","{\n  \"load_list_items\": [\n    {\n      \"id\": 105,\n      \"shipping_line\": {\n        \"id\": 1,\n        \"name\": \"Octopi Shipping Company\",\n        \"code\": \"OCTO\"\n      },\n      \"container_type\": \"20DV\",\n      \"container_status\": \"Empty\",\n      \"container\": null,\n      \"loaded\": false,\n      \"loaded_at\": null,\n      \"overshipped\": false,\n      \"notes\": \"sample notes 1\",\n      \"created_at\": \"2025-12-08T07:12:27-05:00\"\n    },\n    {\n      \"id\": 106,\n      \"shipping_line\": {\n        \"id\": 1,\n        \"name\": \"Octopi Shipping Company\",\n        \"code\": \"OCTO\"\n      },\n      \"container_type\": \"20DV\",\n      \"container_status\": \"Empty\",\n      \"container\": null,\n      \"loaded\": false,\n      \"loaded_at\": null,\n      \"overshipped\": false,\n      \"notes\": \"sample notes 1\",\n      \"created_at\": \"2025-12-08T07:12:27-05:00\"\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/load_lists-load_list_items/create","name":"create","apis":[{"api_url":"/api/v1/load_lists/:load_list_id/load_list_items.json","http_method":"POST","short_description":"Creates load list item for the specified load list.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"load_list_id","full_name":"load_list_id","description":"\n\u003cp\u003eOctopi ID of the load list.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"load_list_item_type","full_name":"load_list_item_type","description":"\n\u003cp\u003eThe type of container for which you want to create a load list item\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003efull\u003c/code\u003e, \u003ccode\u003eempty\u003c/code\u003e, \u003ccode\u003ebreak_bulk\u003c/code\u003e, \u003ccode\u003evehicle\u003c/code\u003e, \u003ccode\u003eempties\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"load_list_item","full_name":"load_list_item","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"container_id","full_name":"load_list_item[container_id]","description":"\n\u003cp\u003eOctopi ID of any container or breakbulk or vehicle. This is mandatory when load_list_item_type is anything other than ‘empties’.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_type_id","full_name":"load_list_item[container_type_id]","description":"\n\u003cp\u003eOctopi ID of any container type. This is mandatory when load_list_item_type is set to ‘empties’.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_line_id","full_name":"load_list_item[shipping_line_id]","description":"\n\u003cp\u003eOctopi ID of any shipping line. This is mandatory when load_list_item_type is set to ‘empties’.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"quantity","full_name":"load_list_item[quantity]","description":"\n\u003cp\u003eNumber of empties you want to create\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/load_lists/LOAD_LIST_ID/load_list_items' \\\n  -X 'POST' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN' \\\n  -d '{\n    \"load_list_item_type\": \"empties\",\n    \"load_list_item\": {\n      \"quantity\": 2,\n      \"container_type_id\": 2,\n      \"shipping_line_id\": 1,\n      \"notes\": \"sample notes 1\"\n    }\n  }'\n\n# Example when load_list_item_type is other than empties\ncurl 'https://app.octopi.co/api/v1/load_lists/LOAD_LIST_ID/load_list_items' \\\n  -X 'POST' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN' \\\n  -d '{\n    \"load_list_item_type\": \"full\",\n    \"load_list_item\": {\n      \"container_id\": \"123141\",\n      \"notes\": \"sample notes 1\"\n    }\n  }'\n","{\n  \"load_list_items\": [\n    {\n      \"id\": 105,\n      \"shipping_line\": {\n        \"id\": 1,\n        \"name\": \"Octopi Shipping Company\",\n        \"code\": \"OCTO\"\n      },\n      \"container_type\": \"20DV\",\n      \"container_status\": \"Empty\",\n      \"container\": null,\n      \"loaded\": false,\n      \"loaded_at\": null,\n      \"overshipped\": false,\n      \"notes\": \"sample notes 1\",\n      \"created_at\": \"2025-12-08T07:12:27-05:00\"\n    },\n    {\n      \"id\": 106,\n      \"shipping_line\": {\n        \"id\": 1,\n        \"name\": \"Octopi Shipping Company\",\n        \"code\": \"OCTO\"\n      },\n      \"container_type\": \"20DV\",\n      \"container_status\": \"Empty\",\n      \"container\": null,\n      \"loaded\": false,\n      \"loaded_at\": null,\n      \"overshipped\": false,\n      \"notes\": \"sample notes 1\",\n      \"created_at\": \"2025-12-08T07:12:27-05:00\"\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/load_lists-load_list_items/destroy","name":"destroy","apis":[{"api_url":"/api/v1/load_lists/:load_list_id/load_list_items/:id.json","http_method":"DELETE","short_description":"Deletes the specified load list item.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"load_list_id","full_name":"load_list_id","description":"\n\u003cp\u003eOctopi ID of the load list.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"\n\u003cp\u003eOctopi ID of the load list item.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/load_lists/LOAD_LIST_ID/load_list_items/LOAD_LIST_ITEM_ID' \\\n  -X 'DELETE' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n","{\n  \"id\": 106,\n  \"shipping_line\": {\n    \"id\": 1,\n    \"name\": \"Octopi Shipping Company\",\n    \"code\": \"OCTO\"\n  },\n  \"container_type\": \"20DV\",\n  \"container_status\": \"Empty\",\n  \"container\": null,\n  \"loaded\": false,\n  \"loaded_at\": null,\n  \"overshipped\": false,\n  \"notes\": \"sample notes 1\",\n  \"created_at\": \"2025-12-08T07:12:27-05:00\"\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"manifests-bill_of_ladings":{"doc_url":"/api/v1/documentation/1.0/manifests-bill_of_ladings","id":"manifests-bill_of_ladings","api_url":"/api/v1","name":"Manifests::Bill_of_ladings","short_description":"This resources allows you to create bill of ladings in Octopi.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/manifests-bill_of_ladings/bol_segments","name":"bol_segments","apis":[{"api_url":"/api/v1/manifests/:manifest_client_identifier/bill_of_ladings.json","http_method":"POST","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint will allow you to create a bill of lading for a particular manifest. Please check the payload specification to make sure the required attributes are part of the payload and the optional attributes respect the specifications.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"manifest_client_identifier","full_name":"manifest_client_identifier","description":"\n\u003cp\u003eThe same client_identifier provided on manifest creation.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"bill_of_lading","full_name":"bill_of_lading","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"number","full_name":"bill_of_lading[number]","description":"\n\u003cp\u003eThis is a unique bill of lading number for a particular manifest. Sometimes known as reference number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"weight","full_name":"bill_of_lading[weight]","description":"\n\u003cp\u003eThe weight stored in your organization’s weight unit preference.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"remarks","full_name":"bill_of_lading[remarks]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"volume_in_cubic_meters","full_name":"bill_of_lading[volume_in_cubic_meters]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"goods_description","full_name":"bill_of_lading[goods_description]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_marks","full_name":"bill_of_lading[shipping_marks]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"package_code","full_name":"bill_of_lading[package_code]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"consignee_address","full_name":"bill_of_lading[consignee_address]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"exporter_address","full_name":"bill_of_lading[exporter_address]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"destination_code","full_name":"bill_of_lading[destination_code]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"type_of_contract","full_name":"bill_of_lading[type_of_contract]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"usage","full_name":"bill_of_lading[usage]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]},{"name":"port_of_loading_locode","full_name":"port_of_loading_locode","description":"\n\u003cp\u003eA port will be associated with a bill of lading only if the port locode exists in Octopi.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"port_of_discharge_locode","full_name":"port_of_discharge_locode","description":"\n\u003cp\u003eA port will be associated with a bill of lading only if the port locode exists in Octopi.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"port_of_delivery_locode","full_name":"port_of_delivery_locode","description":"\n\u003cp\u003eA port will be associated with a bill of lading only if the port locode exists in Octopi.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"consignee","full_name":"consignee","description":"\n\u003cp\u003eName of consignee as stored in Octopi.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"exporter","full_name":"exporter","description":"\n\u003cp\u003eName of exporter as stored in Octopi.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/manifests/123/bill_of_ladings.json\" -d '{ \"bill_of_lading\": { \"number\": \"unique number\", \"weight\": 500.01, \"remarks\": \"The goods have been loaded early.\", \"goods_description\": \"misc\", \"consignee_address\": \"1 Park Ave, New York, NY 10016\", \"exporter_address\": \"1 Park Ave, New York, NY 10016\", \"shipping_marks\": \"shipping marks\", \"package_code\": \"51\", \"destination_code\": \"S4B4\", \"type_of_contract\": \"FAS\"}, \"consignee\": \"APPLE\", \"exporter\": \"ALIBABA\", \"usage\": \"import\" }' -X POST -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/manifests-bill_of_ladings/index","name":"index","apis":[{"api_url":"/api/v1/manifests/:manifest_client_identifier/bill_of_ladings.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint will allow you to get a list of bill of ladings for a particular manifest. Please check the payload specification to make sure the required attributes are part of the payload and the optional attributes respect the specifications.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"manifest_client_identifier","full_name":"manifest_client_identifier","description":"\n\u003cp\u003eThe same client_identifier provided on manifest creation.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/manifests/123/bill_of_ladings.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/manifests-bill_of_ladings/update","name":"update","apis":[{"api_url":"/api/v1/manifests/:manifest_client_identifier/bill_of_ladings/:id.json","http_method":"PATCH","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint will allow you to update a bill of lading for a particular manifest. Updating Consignee, Shipper or Exporter is not allowed at the moment.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"manifest_client_identifier","full_name":"manifest_client_identifier","description":"\n\u003cp\u003eThe same client_identifier provided on manifest creation.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"bill_of_lading","full_name":"bill_of_lading","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"client_identifier","full_name":"bill_of_lading[client_identifier]","description":"\n\u003cp\u003eThis is a unique client identifier for bill of lading.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"weight","full_name":"bill_of_lading[weight]","description":"\n\u003cp\u003eThe weight stored in your organization’s weight unit preference.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"remarks","full_name":"bill_of_lading[remarks]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"volume_in_cubic_meters","full_name":"bill_of_lading[volume_in_cubic_meters]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"goods_description","full_name":"bill_of_lading[goods_description]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_marks","full_name":"bill_of_lading[shipping_marks]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"package_code","full_name":"bill_of_lading[package_code]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"consignee_address","full_name":"bill_of_lading[consignee_address]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"exporter_address","full_name":"bill_of_lading[exporter_address]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"destination_code","full_name":"bill_of_lading[destination_code]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"type_of_contract","full_name":"bill_of_lading[type_of_contract]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"usage","full_name":"bill_of_lading[usage]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"consignee_id","full_name":"bill_of_lading[consignee_id]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"exporter_id","full_name":"bill_of_lading[exporter_id]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"port_of_loading","full_name":"bill_of_lading[port_of_loading]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"port_of_discharge","full_name":"bill_of_lading[port_of_discharge]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"port_of_delivery","full_name":"bill_of_lading[port_of_delivery]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/manifests/123/bill_of_ladings/:id.json\" -d '{ \"bill_of_lading\": { \"number\": \"unique number\", \"weight\": 500.01, \"remarks\": \"The goods have been loaded early.\", \"goods_description\": \"misc\", \"consignee_address\": \"1 Park Ave, New York, NY 10016\", \"exporter_address\": \"1 Park Ave, New York, NY 10016\", \"shipping_marks\": \"shipping marks\", \"package_code\": \"51\", \"destination_code\": \"S4B4\", \"type_of_contract\": \"FAS\"}}' -X PATCH -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"packing_list_items-cargoes":{"doc_url":"/api/v1/documentation/1.0/packing_list_items-cargoes","id":"packing_list_items-cargoes","api_url":"/api/v1","name":"Packing_list_items::Cargoes","short_description":"This resource allows you to list the cargo associated to a packing list item.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/packing_list_items-cargoes/index","name":"index","apis":[{"api_url":"/api/v1/packing_list_items/:reference_number/cargoes.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis endpoint returns a list of cargoes associated to the packing list item.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found","metadata":null},{"code":500,"description":"Server crashed for some reason","metadata":null}],"params":[{"name":"reference_number","full_name":"reference_number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/packing_list_items/REFERENCE_NUMBER/cargoes.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n","{\n   \"cargoes\" : [\n      {\n         \"actions\" : {\n            \"movements\" : {\n               \"method\" : \"GET\",\n               \"url\" : \"https://app.octopi.co/api/v1/containers/123/movements.json\"\n            },\n            \"show\" : {\n               \"url\" : \"https://app.octopi.co/api/v1/containers/123.json\",\n               \"method\" : \"GET\"\n            },\n            \"list_holds\" : {\n               \"url\" : \"https://app.octopi.co/api/v1/containers/123/holds.json\",\n               \"method\" : \"GET\"\n            }\n         },\n         \"id\" : 123,\n         \"current_location\" : \"Warehouse 1\",\n         \"current_location_code\" : \"BBB-123\",\n         \"shipping_line\" : {\n            \"agent\" : {\n               \"name\" : \"GREAT AGENCIES INC\"\n            },\n            \"synonyms\" : [],\n            \"name\" : \"MAERSK\",\n            \"carrier_type\" : \"ocean\",\n            \"code\" : \"MAEU\"\n         },\n         \"departure_voyage\" : {\n            \"number\" : \"445N\",\n            \"vessel\" : {\n               \"name\" : \"BLUE VESSEL\"\n            },\n            \"estimated_time_of_departure\" : \"2017-04-07T02:00:00.000Z\"\n         },\n         \"weight\" : 200,\n         \"goods\" : \"SOCCER BALLS\",\n         \"hazmat_codes\" : [],\n         \"current_location_type\" : \"YardArea\",\n         \"description\" : \"SOCCER BALLS\",\n         \"consignees\" : [],\n         \"arrival_voyage\" : {\n            \"estimated_time_of_anchorage\" : \"2017-04-07T02:00:00.000Z\",\n            \"number\" : \"446S\",\n            \"vessel\" : {\n               \"name\" : \"BLUE VESSEL\"\n            }\n         }\n      }\n      ,\n      {\n         \"id\" : 125,\n         \"current_location\" : \"Warehouse 2\",\n         \"actions\" : {\n            \"movements\" : {\n               \"method\" : \"GET\",\n               \"url\" : \"https://app.octopi.co/api/v1/containers/125/movements.json\"\n            },\n            \"show\" : {\n               \"url\" : \"https://app.octopi.co/api/v1/containers/125.json\",\n               \"method\" : \"GET\"\n            },\n            \"list_holds\" : {\n               \"method\" : \"GET\",\n               \"url\" : \"https://app.octopi.co/api/v1/containers/125/holds.json\"\n            }\n         },\n         \"hazmat_codes\" : [],\n         \"description\" : \"BASEBALLS\",\n         \"current_location_type\" : \"YardArea\",\n         \"goods\" : \"BASEBALLS\",\n         \"weight\" : 100,\n         \"arrival_voyage\" : {\n            \"vessel\" : {\n               \"name\" : \"RED VESSEL\"\n            },\n            \"estimated_time_of_anchorage\" : \"2017-04-07T02:00:00.000Z\",\n            \"number\" : \"43S\"\n         },\n         \"consignees\" : [],\n         \"shipping_line\" : {\n            \"carrier_type\" : \"ocean\",\n            \"code\" : \"MAEU\",\n            \"name\" : \"MAERSK\",\n            \"synonyms\" : [],\n            \"agent\" : {\n               \"name\" : \"GREAT AGENCIES INC\"\n            }\n         },\n         \"departure_voyage\" : {\n            \"number\" : \"45N\",\n            \"estimated_time_of_departure\" : \"2017-04-07T02:00:00.000Z\",\n            \"vessel\" : {\n               \"name\" : \"RED VESSEL\"\n            }\n         }\n      }\n   ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"service_orders-service_order_items":{"doc_url":"/api/v1/documentation/1.0/service_orders-service_order_items","id":"service_orders-service_order_items","api_url":"/api/v1","name":"Service_orders::Service_order_items","short_description":"This resource allows you to create, update or delete service order items in Octopi.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/service_orders-service_order_items/show","name":"show","apis":[{"api_url":"/api/v1/service_orders/:order_number/service_order_items/:id.json","http_method":"GET","short_description":"Returns information about the order item under the given service order.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"order_number","full_name":"order_number","description":"\n\u003cp\u003eOctopi ID or the unique service order number given while creating one.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"\n\u003cp\u003eOctopi ID of the service order item.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/service_orders/ORDER_NUMBER/service_order_items/ORDER_ITEM_ID' \\\n  -X 'GET' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n","{\n  \"order_number\": \"API_TEST_003\",\n  \"id\": 80,\n  \"status\": \"pending\",\n  \"container_id\": 4332804,\n  \"container_number\": \"BMOU9341910\",\n  \"service_type\": \"default\",\n  \"service_id\": \"reseal\",\n  \"service_name\": \"Reseal (Default)\"\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/service_orders-service_order_items/create","name":"create","apis":[{"api_url":"/api/v1/service_orders/:order_number/service_order_items.json","http_method":"POST","short_description":"Creates an order item under the given service order.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"order_number","full_name":"order_number","description":"\n\u003cp\u003eOctopi ID or the unique service order number given while creating one.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"service_order_item","full_name":"service_order_item","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"container_id","full_name":"service_order_item[container_id]","description":"\n\u003cp\u003eOctopi ID of any container or breakbulk.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"service_id","full_name":"service_order_item[service_id]","description":"\n\u003cp\u003edefault or custom service IDs provided by Octopi.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/service_orders/ORDER_NUMBER/service_order_items' \\\n  -X 'POST' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN' \\\n  -d '{\n    \"service_order_item\": {\n      \"container_id\": 4332804,\n      \"service_id\": \"reseal\"\n    }\n  }'\n","{\n  \"order_number\": \"API_TEST_003\",\n  \"id\": 80,\n  \"status\": \"pending\",\n  \"container_id\": 4332804,\n  \"container_number\": \"BMOU9341910\",\n  \"service_type\": \"default\",\n  \"service_id\": \"reseal\",\n  \"service_name\": \"Reseal (Default)\"\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/service_orders-service_order_items/update","name":"update","apis":[{"api_url":"/api/v1/service_orders/:order_number/service_order_items/:id.json","http_method":"PUT","short_description":"Updates an existing service order item.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"order_number","full_name":"order_number","description":"\n\u003cp\u003eOctopi ID or the unique service order number given while creating one.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"\n\u003cp\u003eOctopi ID of the service order item.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"service_order_item","full_name":"service_order_item","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"container_id","full_name":"service_order_item[container_id]","description":"\n\u003cp\u003eOctopi ID of any container or breakbulk.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"service_id","full_name":"service_order_item[service_id]","description":"\n\u003cp\u003edefault or custom service IDs provided by Octopi.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/service_orders/ORDER_NUMBER/service_order_items/ORDER_ITEM_ID' \\\n  -X 'PUT' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN' \\\n  -d '{\n    \"service_order_item\": {\n      \"container_id\": 4337700,\n      \"service_id\": \"inspection\"\n    }\n  }'\n","{\n  \"order_number\": \"API_TEST_003\",\n  \"id\": 80,\n  \"status\": \"pending\",\n  \"container_id\": 4337700,\n  \"container_number\": \"0317933\",\n  \"service_type\": \"default\",\n  \"service_id\": \"inspection\",\n  \"service_name\": \"Inspection (Default)\"\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/service_orders-service_order_items/destroy","name":"destroy","apis":[{"api_url":"/api/v1/service_orders/:order_number/service_order_items/:id.json","http_method":"DELETE","short_description":"Deletes an existing service order item.","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"order_number","full_name":"order_number","description":"\n\u003cp\u003eOctopi ID or the unique service order number given while creating one.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"\n\u003cp\u003eOctopi ID of the service order item.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/service_orders/ORDER_NUMBER/service_order_items/ORDER_ITEM_ID' \\\n  -X 'DELETE' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n","{\n  \"order_number\": \"API_TEST_003\",\n  \"id\": 79,\n  \"status\": \"pending\",\n  \"container_id\": 4337700,\n  \"container_number\": \"0317933\",\n  \"service_type\": \"default\",\n  \"service_id\": \"cleaning\",\n  \"service_name\": \"Cleaning (Default)\"\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"truck_visits-dock_receipts":{"doc_url":"/api/v1/documentation/1.0/truck_visits-dock_receipts","id":"truck_visits-dock_receipts","api_url":"/api/v1","name":"Truck_visits::Dock_receipts","short_description":"This resource allows you to view, create, and delete dock receipts for truck visits in Octopi.","full_description":"\n\u003cp\u003eThis resource allows clients to view, create, and delete a dock receipts for truck visits in Octopi.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/truck_visits-dock_receipts/index","name":"index","apis":[{"api_url":"/api/v1/truck_visits/:truck_visit_id/dock_receipts.json","http_method":"GET","short_description":"Get list of dock receipts for a truck visit.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eList all the dock receipts for the given truck visit ID.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null},{"code":409,"description":"Entity conflict.","metadata":null}],"params":[{"name":"truck_visit_id","full_name":"truck_visit_id","description":"\n\u003cp\u003eTruck visit ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl --location --request GET 'https://app.octopi.co/api/v1/truck_visits/86739/dock_receipts.json'     --header 'Content-Type: application/json'     --data-raw '{\n}'\n","[\n      {\n          \"dock_receipt_url\": \"https://app.octopi.co/api/v1/truck_visits/86739/dock_receipts/46\",\n          \"truck_visit_id\": 86739,\n          \"completed_at\": \"2019-01-24T20:08:18.575-05:00\",\n          \"booking\": {\n              \"id\": 189742,\n              \"booking_number\": \"10421990\",\n              \"voyage_number\": \"23S\",\n              \"trucking_company_id\": null,\n              \"ship_name\": \"HOHEBANK\",\n              \"items\": [\n                  {\n                      \"id\": 961911,\n                      \"line_item_number\": 1,\n                      \"quantity\": 1,\n                      \"description\": \"1.PAYMOVER T300\",\n                      \"container\": {\n                          \"id\": 392426,\n                          \"display_name\": \"1982 paymover t300\"\n                      },\n                      \"dock_receipt_cargos\": [\n                          \"25AD079A105FE0\"\n                      ],\n                      \"hazmat_codes\": [],\n                      \"hazmat_ids_and_codes\": {},\n                      \"hazmat_classes\": [],\n                      \"container_type\": {\n                          \"label\": \"UNKNOWN\"\n                      }\n                  }\n              ],\n              \"all_items\": [\n                  {\n                      \"id\": 961911,\n                      \"line_item_number\": 1,\n                      \"quantity\": 1,\n                      \"description\": \"1.PAYMOVER T300\",\n                      \"container\": {\n                          \"id\": 392426,\n                          \"display_name\": \"1982 paymover t300\"\n                      },\n                      \"dock_receipt_cargos\": [\n                          \"25AD079A105FE0\"\n                      ],\n                      \"hazmat_codes\": [],\n                      \"hazmat_ids_and_codes\": {},\n                      \"hazmat_classes\": [],\n                      \"container_type\": {\n                          \"label\": \"UNKNOWN\"\n                      }\n                  },\n                  {\n                      \"id\": 961912,\n                      \"line_item_number\": 2,\n                      \"quantity\": 0,\n                      \"description\": \"DIMENSIONES: L:232\" X W:96\" X H:79\"\",\n                      \"container\": {\n                          \"id\": null,\n                          \"display_name\": null\n                      },\n                      \"dock_receipt_cargos\": [],\n                      \"hazmat_codes\": [],\n                      \"hazmat_ids_and_codes\": {},\n                      \"hazmat_classes\": []\n                  },\n                  {\n                      \"id\": 961913,\n                      \"line_item_number\": 3,\n                      \"quantity\": 0,\n                      \"description\": \"PESO: 40,000 LIBRAS\",\n                      \"container\": {\n                          \"id\": null,\n                          \"display_name\": null\n                      },\n                      \"dock_receipt_cargos\": [],\n                      \"hazmat_codes\": [],\n                      \"hazmat_ids_and_codes\": {},\n                      \"hazmat_classes\": []\n                  },\n                  {\n                      \"id\": 961914,\n                      \"line_item_number\": 4,\n                      \"quantity\": 0,\n                      \"description\": \"NUMERO DE SERIE: 00352\",\n                      \"container\": {\n                          \"id\": null,\n                          \"display_name\": null\n                      },\n                      \"dock_receipt_cargos\": [],\n                      \"hazmat_codes\": [],\n                      \"hazmat_ids_and_codes\": {},\n                      \"hazmat_classes\": []\n                  }\n              ],\n              \"port_of_discharge\": \"CARTAGENA (COCTG)\",\n              \"port_of_loading\": \"PORT EVERGLADES (USPEF)\",\n              \"port_of_delivery\": \"CARTAGENA (COCTG)\",\n              \"shipper\": {\n                  \"name\": \"OCEAN CARGO LOGISTICS GROUP\"\n              }\n          }\n      },\n      {\n          \"dock_receipt_url\": \"https://app.octopi.co/api/v1/truck_visits/86739/dock_receipts/47\",\n          \"truck_visit_id\": 86739,\n          \"completed_at\": \"2019-01-24T20:08:18.575-05:00\",\n          \"booking\": {\n              \"id\": 189742,\n              \"booking_number\": \"10421990\",\n              \"voyage_number\": \"23S\",\n              \"trucking_company_id\": null,\n              \"ship_name\": \"HOHEBANK\",\n              \"items\": [\n                  {\n                      \"id\": 961911,\n                      \"line_item_number\": 1,\n                      \"quantity\": 1,\n                      \"description\": \"1.PAYMOVER T300\",\n                      \"container\": {\n                          \"id\": 392426,\n                          \"display_name\": \"1982 paymover t300\"\n                      },\n                      \"dock_receipt_cargos\": [\n                          \"25AD079A105FE0\"\n                      ],\n                      \"hazmat_codes\": [],\n                      \"hazmat_ids_and_codes\": {},\n                      \"hazmat_classes\": [],\n                      \"container_type\": {\n                          \"label\": \"UNKNOWN\"\n                      }\n                  }\n              ],\n              \"all_items\": [\n                  {\n                      \"id\": 961911,\n                      \"line_item_number\": 1,\n                      \"quantity\": 1,\n                      \"description\": \"1.PAYMOVER T300\",\n                      \"container\": {\n                          \"id\": 392426,\n                          \"display_name\": \"1982 paymover t300\"\n                      },\n                      \"dock_receipt_cargos\": [\n                          \"25AD079A105FE0\"\n                      ],\n                      \"hazmat_codes\": [],\n                      \"hazmat_ids_and_codes\": {},\n                      \"hazmat_classes\": [],\n                      \"container_type\": {\n                          \"label\": \"UNKNOWN\"\n                      }\n                  },\n                  {\n                      \"id\": 961912,\n                      \"line_item_number\": 2,\n                      \"quantity\": 0,\n                      \"description\": \"DIMENSIONES: L:232\" X W:96\" X H:79\"\",\n                      \"container\": {\n                          \"id\": null,\n                          \"display_name\": null\n                      },\n                      \"dock_receipt_cargos\": [],\n                      \"hazmat_codes\": [],\n                      \"hazmat_ids_and_codes\": {},\n                      \"hazmat_classes\": []\n                  },\n                  {\n                      \"id\": 961913,\n                      \"line_item_number\": 3,\n                      \"quantity\": 0,\n                      \"description\": \"PESO: 40,000 LIBRAS\",\n                      \"container\": {\n                          \"id\": null,\n                          \"display_name\": null\n                      },\n                      \"dock_receipt_cargos\": [],\n                      \"hazmat_codes\": [],\n                      \"hazmat_ids_and_codes\": {},\n                      \"hazmat_classes\": []\n                  },\n                  {\n                      \"id\": 961914,\n                      \"line_item_number\": 4,\n                      \"quantity\": 0,\n                      \"description\": \"NUMERO DE SERIE: 00352\",\n                      \"container\": {\n                          \"id\": null,\n                          \"display_name\": null\n                      },\n                      \"dock_receipt_cargos\": [],\n                      \"hazmat_codes\": [],\n                      \"hazmat_ids_and_codes\": {},\n                      \"hazmat_classes\": []\n                  }\n              ],\n              \"port_of_discharge\": \"CARTAGENA (COCTG)\",\n              \"port_of_loading\": \"PORT EVERGLADES (USPEF)\",\n              \"port_of_delivery\": \"CARTAGENA (COCTG)\",\n              \"shipper\": {\n                  \"name\": \"OCEAN CARGO LOGISTICS GROUP\"\n              }\n          }\n      }\n  ]\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/truck_visits-dock_receipts/show","name":"show","apis":[{"api_url":"/api/v1/truck_visits/:truck_visit_id/dock_receipts/:id.json","http_method":"GET","short_description":"Get details of a dock receipt.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eShow dock receipt for a given dock_receipt ID.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null},{"code":409,"description":"Entity conflict.","metadata":null}],"params":[{"name":"truck_visit_id","full_name":"truck_visit_id","description":"\n\u003cp\u003eTruck visit ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"\n\u003cp\u003eDock receipt ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl --location --request GET 'https://app.octopi.co/api/v1/truck_visits/34213/dock_receipts/234.json'     --header 'Content-Type: application/json'\n","  {\n    \"truck_visit_id\": 34213,\n    \"completed_at\": \"2019-01-24T20:08:18.575-05:00\",\n    \"booking\": {\n        \"id\": 189742,\n        \"booking_number\": \"10421990\",\n        \"voyage_number\": \"23S\",\n        \"trucking_company_id\": null,\n        \"ship_name\": \"HOHEBANK\",\n        \"items\": [\n            {\n                \"id\": 961911,\n                \"line_item_number\": 1,\n                \"quantity\": 1,\n                \"description\": \"1.PAYMOVER T300\",\n                \"container\": {\n                    \"id\": 392426,\n                    \"display_name\": \"1982 paymover t300\"\n                },\n                \"dock_receipt_cargos\": [\n                    \"25AD079A105FE0\"\n                ],\n                \"hazmat_codes\": [],\n                \"hazmat_ids_and_codes\": {},\n                \"hazmat_classes\": [],\n                \"container_type\": {\n                    \"label\": \"UNKNOWN\"\n                }\n            }\n        ],\n        \"all_items\": [\n            {\n                \"id\": 961911,\n                \"line_item_number\": 1,\n                \"quantity\": 1,\n                \"description\": \"1.PAYMOVER T300\",\n                \"container\": {\n                    \"id\": 392426,\n                    \"display_name\": \"1982 paymover t300\"\n                },\n                \"dock_receipt_cargos\": [\n                    \"25AD079A105FE0\"\n                ],\n                \"hazmat_codes\": [],\n                \"hazmat_ids_and_codes\": {},\n                \"hazmat_classes\": [],\n                \"container_type\": {\n                    \"label\": \"UNKNOWN\"\n                }\n            },\n            {\n                \"id\": 961912,\n                \"line_item_number\": 2,\n                \"quantity\": 0,\n                \"description\": \"DIMENSIONES: L:232\" X W:96\" X H:79\"\",\n                \"container\": {\n                    \"id\": null,\n                    \"display_name\": null\n                },\n                \"dock_receipt_cargos\": [],\n                \"hazmat_codes\": [],\n                \"hazmat_ids_and_codes\": {},\n                \"hazmat_classes\": []\n            },\n            {\n                \"id\": 961913,\n                \"line_item_number\": 3,\n                \"quantity\": 0,\n                \"description\": \"PESO: 40,000 LIBRAS\",\n                \"container\": {\n                    \"id\": null,\n                    \"display_name\": null\n                },\n                \"dock_receipt_cargos\": [],\n                \"hazmat_codes\": [],\n                \"hazmat_ids_and_codes\": {},\n                \"hazmat_classes\": []\n            },\n            {\n                \"id\": 961914,\n                \"line_item_number\": 4,\n                \"quantity\": 0,\n                \"description\": \"NUMERO DE SERIE: 00352\",\n                \"container\": {\n                    \"id\": null,\n                    \"display_name\": null\n                },\n                \"dock_receipt_cargos\": [],\n                \"hazmat_codes\": [],\n                \"hazmat_ids_and_codes\": {},\n                \"hazmat_classes\": []\n            }\n        ],\n        \"port_of_discharge\": \"CARTAGENA (COCTG)\",\n        \"port_of_loading\": \"PORT EVERGLADES (USPEF)\",\n        \"port_of_delivery\": \"CARTAGENA (COCTG)\",\n        \"shipper\": {\n            \"name\": \"OCEAN CARGO LOGISTICS GROUP\"\n        }\n    }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/truck_visits-dock_receipts/destroy","name":"destroy","apis":[{"api_url":"/api/v1/truck_visit/:truck_visit_id/dock_receipts/:id.json","http_method":"DELETE","short_description":"Delete a dock receipt when ID given.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to delete a dock receipt.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null},{"code":409,"description":"Entity conflict.","metadata":null}],"params":[{"name":"truck_visit_id","full_name":"truck_visit_id","description":"\n\u003cp\u003eTruck visit ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"\n\u003cp\u003eDock receipt ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/truck_visits/213/dock_receipts/353388.json\" -X DELETE -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\"dock_receipt_id: 353388}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/truck_visits-dock_receipts/create","name":"create","apis":[{"api_url":"/api/v1/truck_visits/:truck_visit_id/dock_receipts.json","http_method":"POST","short_description":"Create a dock receipt for a truck visit.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eCreate a dock receipt for a truck visit.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null},{"code":409,"description":"Entity conflict.","metadata":null}],"params":[{"name":"truck_visit_id","full_name":"truck_visit_id","description":"\n\u003cp\u003eTruck visit ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"booking_number","full_name":"booking_number","description":"\n\u003cp\u003eBooking number for the dock receipt.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl --location --request POST 'https://app.octopi.co/api/v1/truck_visits/86739/dock_receipts.json'     --header 'Content-Type: application/json'     --data-raw '{\n  \"booking_number\": \"10421990\"\n}'\n","  {\n    \"truck_visit_id\": 86739,\n    \"completed_at\": null,\n    \"booking\": {\n        \"id\": 189742,\n        \"booking_number\": \"10421990\",\n        \"voyage_number\": \"23S\",\n        \"trucking_company_id\": null,\n        \"ship_name\": \"HOHEBANK\",\n        \"items\": [\n            {\n                \"id\": 961911,\n                \"line_item_number\": 1,\n                \"quantity\": 1,\n                \"description\": \"1.PAYMOVER T300\",\n                \"container\": {\n                    \"id\": 392426,\n                    \"display_name\": \"1982 paymover t300\"\n                },\n                \"dock_receipt_cargos\": [\n                    \"25AD079A105FE0\"\n                ],\n                \"hazmat_codes\": [],\n                \"hazmat_ids_and_codes\": {},\n                \"hazmat_classes\": [],\n                \"container_type\": {\n                    \"label\": \"UNKNOWN\"\n                }\n            }\n        ],\n        \"all_items\": [\n            {\n                \"id\": 961911,\n                \"line_item_number\": 1,\n                \"quantity\": 1,\n                \"description\": \"1.PAYMOVER T300\",\n                \"container\": {\n                    \"id\": 392426,\n                    \"display_name\": \"1982 paymover t300\"\n                },\n                \"dock_receipt_cargos\": [\n                    \"25AD079A105FE0\"\n                ],\n                \"hazmat_codes\": [],\n                \"hazmat_ids_and_codes\": {},\n                \"hazmat_classes\": [],\n                \"container_type\": {\n                    \"label\": \"UNKNOWN\"\n                }\n            },\n            {\n                \"id\": 961912,\n                \"line_item_number\": 2,\n                \"quantity\": 0,\n                \"description\": \"DIMENSIONES: L:232\" X W:96\" X H:79\"\",\n                \"container\": {\n                    \"id\": null,\n                    \"display_name\": null\n                },\n                \"dock_receipt_cargos\": [],\n                \"hazmat_codes\": [],\n                \"hazmat_ids_and_codes\": {},\n                \"hazmat_classes\": []\n            },\n            {\n                \"id\": 961913,\n                \"line_item_number\": 3,\n                \"quantity\": 0,\n                \"description\": \"PESO: 40,000 LIBRAS\",\n                \"container\": {\n                    \"id\": null,\n                    \"display_name\": null\n                },\n                \"dock_receipt_cargos\": [],\n                \"hazmat_codes\": [],\n                \"hazmat_ids_and_codes\": {},\n                \"hazmat_classes\": []\n            },\n            {\n                \"id\": 961914,\n                \"line_item_number\": 4,\n                \"quantity\": 0,\n                \"description\": \"NUMERO DE SERIE: 00352\",\n                \"container\": {\n                    \"id\": null,\n                    \"display_name\": null\n                },\n                \"dock_receipt_cargos\": [],\n                \"hazmat_codes\": [],\n                \"hazmat_ids_and_codes\": {},\n                \"hazmat_classes\": []\n            }\n        ],\n        \"port_of_discharge\": \"CARTAGENA (COCTG)\",\n        \"port_of_loading\": \"PORT EVERGLADES (USPEF)\",\n        \"port_of_delivery\": \"CARTAGENA (COCTG)\",\n        \"shipper\": {\n            \"name\": \"OCEAN CARGO LOGISTICS GROUP\"\n        }\n    }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"truck_visits-general_cargo_deliveries":{"doc_url":"/api/v1/documentation/1.0/truck_visits-general_cargo_deliveries","id":"truck_visits-general_cargo_deliveries","api_url":"/api/v1","name":"Truck_visits::General_cargo_deliveries","short_description":"This resource allows you to view, create, and delete general cargo deliveries for truck visits in Octopi.","full_description":"\n\u003cp\u003eThis resource allows clients to view, create, and delete a general cargo deliveries for truck visits in Octopi.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/truck_visits-general_cargo_deliveries/index","name":"index","apis":[{"api_url":"/api/v1/truck_visits/:truck_visit_id/general_cargo_deliveries.json","http_method":"GET","short_description":"Get list of general cargo deliveries for truck visits.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eList all the general cargo deliveries for the truck visit ID.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null},{"code":409,"description":"Entity conflict.","metadata":null}],"params":[{"name":"truck_visit_id","full_name":"truck_visit_id","description":"\n\u003cp\u003eTruck visit ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl --location --request GET 'https://app.octopi.co/api/v1/truck_visits/1546714/general_cargo_deliveries.json'     --header 'Content-Type: application/json'\n","    [\n      {\n        \"general_cargo_delivery_url\": \"https://app.octopi.co/api/v1/truck_visits/1546714/general_cargo_deliveries/131175\",\n        \"truck_visit_id\": 1546714,\n        \"truck_driver\": \"Alvin Bryan (M 4492)\",\n        \"started_at\": \"2021-08-24T13:24:57.858-04:00\",\n        \"started_by\": \"Basil Depradine\",\n        \"completed\": true,\n        \"completed_at\": \"2021-08-24T13:35:00.891-04:00\",\n        \"completed_by\": {\n          \"id\": 3140,\n          \"created_at\": \"2020-08-04T07:56:04.939-04:00\",\n          \"updated_at\": \"2022-03-28T11:11:59.496-04:00\",\n          \"organization_id\": 8,\n          \"agent_id\": null,\n          \"shipping_line_id\": null,\n          \"consignee_id\": null,\n          \"email\": \"ihumphrey@barbadosport.com\",\n          \"firstname\": \"ISHA\",\n          \"lastname\": \"HUMPHREY\",\n          \"office_phone\": \"\",\n          \"mobile_phone\": \"\",\n          \"title\": \"CLERICAL OFFICER \",\n          \"address\": \"\",\n          \"roles_users_count\": 5,\n          \"work_location_type\": \"\",\n          \"work_location_id\": null,\n          \"trucking_company_id\": null,\n          \"active\": true,\n          \"is_equipment_operator\": false,\n          \"high_contrast_ui\": false,\n          \"freight_forwarder_id\": null,\n          \"password_updated_at\": \"2020-08-04T08:05:02.805-04:00\",\n          \"staff\": false,\n          \"beta_tester\": false,\n          \"locale\": \"en\",\n          \"pending_approval\": false,\n          \"broker_id\": null,\n          \"name\": \"Isha Humphrey\"\n        },\n        \"delivered_at\": \"2021-08-24T13:35:00.888-04:00\",\n        \"delivered_to\": \"\",\n        \"updated_at\": \"2021-08-24T13:35:00.891-04:00\",\n        \"remarks\": \"BAGS\",\n        \"release_order\": null,\n        \"delivery_order\": null,\n        \"barge\": null,\n        \"reopened_by\": null,\n        \"total_delivered\": 10.0,\n        \"pretty_weight\": \"18,377.06 KG\",\n        \"delivery_items\": [\n          {\n            \"quantity\": 10.0,\n            \"delivered_by\": \"Isha Humphrey\",\n            \"delivered_to\": \"\",\n            \"created_at\": \"2021-08-24T13:34:07.197-04:00\",\n            \"updated_at\": \"2021-08-24T13:34:07.197-04:00\",\n            \"delivery_order\": null,\n            \"pickup_location\": null,\n            \"id\": 251874,\n            \"cargo_id\": 2866358,\n            \"consignee_name\": \"ROCK HARD CEMENT LTD.\",\n            \"holds\": \"0\",\n            \"package_type\": \"\",\n            \"description\": \"3830 PCS OF SLING BAGS\r\n\r\n4347 PCS OF BIG BAGS\r\n\r\n200 PCS SLING BAGS\",\n            \"reference_number\": \"\",\n            \"container_path\": \"/containers/2866358\",\n            \"dock_receipt_number\": \"\",\n            \"delivered_at\": \"2021-08-24 13:34:07 -0400\",\n            \"shipping_marks\": \"\",\n            \"pretty_weight\": \"18,377.06 KG\",\n            \"extra_attributes\": null,\n            \"vin\": \"\",\n            \"bill_of_lading\": {\n              \"id\": 222444,\n              \"number\": \"BOL000001\"\n            }\n          }\n        ]\n      }\n    ]\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/truck_visits-general_cargo_deliveries/show","name":"show","apis":[{"api_url":"/api/v1/truck_visits/:truck_visit_id/general_cargo_deliveries/:id.json","http_method":"GET","short_description":"Get details of a general cargo delivery.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eShow general cargo delivery for a general cargo delivery ID.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null},{"code":409,"description":"Entity conflict.","metadata":null}],"params":[{"name":"truck_visit_id","full_name":"truck_visit_id","description":"\n\u003cp\u003eTruck visit ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"\n\u003cp\u003eGeneral cargo delivery ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl --location --request GET 'https://app.octopi.co/api/v1/truck_visits/1546714/general_cargo_deliveries/123.json'     --header 'Content-Type: application/json'\n","    {\n      \"truck_visit_id\": 1546714,\n      \"truck_driver\": \"Alvin Bryan (M 4492)\",\n      \"started_at\": \"2021-08-24T13:24:57.858-04:00\",\n      \"started_by\": \"Basil Depradine\",\n      \"completed\": true,\n      \"completed_at\": \"2021-08-24T13:35:00.891-04:00\",\n      \"completed_by\": {\n        \"id\": 3140,\n        \"created_at\": \"2020-08-04T07:56:04.939-04:00\",\n        \"updated_at\": \"2022-03-28T11:11:59.496-04:00\",\n        \"organization_id\": 8,\n        \"agent_id\": null,\n        \"shipping_line_id\": null,\n        \"consignee_id\": null,\n        \"email\": \"ihumphrey@barbadosport.com\",\n        \"firstname\": \"ISHA\",\n        \"lastname\": \"HUMPHREY\",\n        \"office_phone\": \"\",\n        \"mobile_phone\": \"\",\n        \"title\": \"CLERICAL OFFICER \",\n        \"address\": \"\",\n        \"roles_users_count\": 5,\n        \"work_location_type\": \"\",\n        \"work_location_id\": null,\n        \"trucking_company_id\": null,\n        \"active\": true,\n        \"is_equipment_operator\": false,\n        \"high_contrast_ui\": false,\n        \"freight_forwarder_id\": null,\n        \"password_updated_at\": \"2020-08-04T08:05:02.805-04:00\",\n        \"staff\": false,\n        \"beta_tester\": false,\n        \"locale\": \"en\",\n        \"pending_approval\": false,\n        \"broker_id\": null,\n        \"name\": \"Isha Humphrey\"\n      },\n      \"delivered_at\": \"2021-08-24T13:35:00.888-04:00\",\n      \"delivered_to\": \"\",\n      \"updated_at\": \"2021-08-24T13:35:00.891-04:00\",\n      \"remarks\": \"BAGS\",\n      \"release_order\": null,\n      \"delivery_order\": null,\n      \"barge\": null,\n      \"reopened_by\": null,\n      \"total_delivered\": 10.0,\n      \"pretty_weight\": \"18,377.06 KG\",\n      \"delivery_items\": [\n        {\n          \"quantity\": 10.0,\n          \"delivered_by\": \"Isha Humphrey\",\n          \"delivered_to\": \"\",\n          \"created_at\": \"2021-08-24T13:34:07.197-04:00\",\n          \"updated_at\": \"2021-08-24T13:34:07.197-04:00\",\n          \"delivery_order\": null,\n          \"pickup_location\": null,\n          \"id\": 251874,\n          \"cargo_id\": 2866358,\n          \"consignee_name\": \"ROCK HARD CEMENT LTD.\",\n          \"holds\": \"0\",\n          \"package_type\": \"\",\n          \"description\": \"3830 PCS OF SLING BAGS\r\n\r\n4347 PCS OF BIG BAGS\r\n\r\n200 PCS SLING BAGS\",\n          \"reference_number\": \"\",\n          \"container_path\": \"/containers/2866358\",\n          \"dock_receipt_number\": \"\",\n          \"delivered_at\": \"2021-08-24 13:34:07 -0400\",\n          \"shipping_marks\": \"\",\n          \"pretty_weight\": \"18,377.06 KG\",\n          \"extra_attributes\": null,\n          \"vin\": \"\",\n          \"bill_of_lading\": {\n            \"id\": 222444,\n            \"number\": \"BOL000001\"\n          }\n        }\n      ]\n    }\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/truck_visits-general_cargo_deliveries/destroy","name":"destroy","apis":[{"api_url":"/api/v1/truck_visit/:truck_visit_id/general_cargo_deliveries/:id.json","http_method":"DELETE","short_description":"Delete a general cargo delivery when ID given","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to delete a general cargo delivery.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null},{"code":409,"description":"Entity conflict.","metadata":null}],"params":[{"name":"truck_visit_id","full_name":"truck_visit_id","description":"\n\u003cp\u003eTruck visit ID\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"\n\u003cp\u003eGeneral cargo delivery ID\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/truck_visits/12321/general_cargo_deliveries/353388.json\" -X DELETE -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\"bid: 353388}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/truck_visits-general_cargo_deliveries/create","name":"create","apis":[{"api_url":"/api/v1/truck_visits/:truck_visit_id/general_cargo_deliveries.json","http_method":"POST","short_description":"Create a general cargo delivery for a truck visit.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eCreate a general cargo delivery for a truck visit.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null},{"code":409,"description":"Entity conflict.","metadata":null}],"params":[{"name":"truck_visit_id","full_name":"truck_visit_id","description":"\n\u003cp\u003eTruck visit ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"bill_of_lading_number","full_name":"bill_of_lading_number","description":"\n\u003cp\u003eBill of lading number for the general cargo delivery.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"delivery_order_number","full_name":"delivery_order_number","description":"\n\u003cp\u003eDelivery order number for the general cargo delivery.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"remarks","full_name":"remarks","description":"\n\u003cp\u003eRemarks for the general cargo delivery.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl --location --request POST 'https://app.octopi.co/api/v1/truck_visits/1546714/general_cargo_deliveries.json'     --header 'Content-Type: application/json'     --data-raw '{\n  \"bill_of_lading_number\": \"BL234234\"\n  \"delivery_order_number\": \"DO234234\"\n  \"remarks\": \"BAGS\"\n}'\n","       {\n          \"truck_visit_id\": 1546714,\n          \"truck_driver\": \"Alvin Bryan (M 4492)\",\n          \"started_at\": \"2021-08-24T13:24:57.858-04:00\",\n          \"started_by\": \"Basil Depradine\",\n          \"completed\": false,\n          \"completed_at\": \"\",\n          \"completed_by\": null,\n          \"delivered_at\": null,\n          \"delivered_to\": \"\",\n          \"updated_at\": null,\n          \"remarks\": \"BAGS\",\n          \"release_order\": null,\n          \"delivery_order\": null,\n          \"barge\": null,\n          \"reopened_by\": null,\n          \"total_delivered\": 10.0,\n          \"pretty_weight\": \"18,377.06 KG\",\n          \"delivery_items\": [\n              {\n                  \"quantity\": 10.0,\n                  \"delivered_by\": null,\n                  \"delivered_to\": null,\n                  \"created_at\": \"2021-08-24T13:34:07.197-04:00\",\n                  \"updated_at\": null,\n                  \"delivery_order\": null,\n                  \"pickup_location\": null,\n                  \"id\": 251874,\n                  \"cargo_id\": 2866358,\n                  \"consignee_name\": \"ROCK HARD CEMENT LTD.\",\n                  \"holds\": \"0\",\n                  \"package_type\": \"\",\n                  \"description\": \"3830 PCS OF SLING BAGS\r\n\r\n4347 PCS OF BIG BAGS\r\n\r\n200 PCS SLING BAGS\",\n                  \"reference_number\": \"\",\n                  \"container_path\": \"/containers/2866358\",\n                  \"dock_receipt_number\": \"\",\n                  \"delivered_at\": null,\n                  \"shipping_marks\": \"\",\n                  \"pretty_weight\": \"18,377.06 KG\",\n                  \"extra_attributes\": null,\n                  \"vin\": \"\"\n              }\n          ]\n      }\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"truck_visits-interchanges":{"doc_url":"/api/v1/documentation/1.0/truck_visits-interchanges","id":"truck_visits-interchanges","api_url":"/api/v1","name":"Truck_visits::Interchanges","short_description":"This resource allows you to view, create, and delete interchange for truck visits in Octopi.","full_description":"\n\u003cp\u003eThis resource allows clients to view, create, and delete a interchange for truck visits in Octopi.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/truck_visits-interchanges/index","name":"index","apis":[{"api_url":"/api/v1/truck_visits/:truck_visit_id/interchanges.json","http_method":"GET","short_description":"Get list of interchanges for a truck visit.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eList all the interchanges for the given truck visit ID.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null},{"code":409,"description":"Entity conflict.","metadata":null}],"params":[{"name":"truck_visit_id","full_name":"truck_visit_id","description":"\n\u003cp\u003eTruck visit ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl --location\n  --request GET 'https://app.octopi.co/api/v1/truck_visits/1876441/interchanges.json'       --header 'Content-Type: application/json'       --data-raw '{}'\n","[\n  {\n    \"interchange_url\": \"http://app.octopi.co/api/v1/truck_visits/1876441/interchanges/2205893\",\n    \"truck_visit_id\": 1876441,\n    \"action_type\": \"interchange_in\",\n    \"container_number\": \"CONZ1234674\",\n    \"container_status\": \"full\",\n    \"container_usage\": 0,\n    \"container_has_damage\": null,\n    \"container_vgm\": null,\n    \"container_seal\": null,\n    \"booking\": \"BOOKING12APR\",\n    \"export_release\": \"EXP1\",\n    \"bill_of_lading\": null,\n    \"delivery_order\": null,\n    \"chassis_number\": \"TESTCH-201\",\n    \"chassis_weight\": null,\n    \"genset\": null,\n    \"genset_seal\": null,\n    \"genset_fuel_level\": null,\n    \"genset_has_reefer_compartment_seal\": null,\n    \"genset_weight\": null,\n    \"reefer_temperature\": null,\n    \"reefer_temperature_unit\": null,\n    \"reefer_set_point_temperature\": null,\n    \"operating_reefer\": false,\n    \"reefer_supply_temperature\": null,\n    \"reefer_humidity\": null,\n    \"reefer_ventilation\": null,\n    \"scale_weight\": null,\n    \"truck_weight\": null,\n    \"completed_at\": null\n  }\n]\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/truck_visits-interchanges/show","name":"show","apis":[{"api_url":"/api/v1/truck_visits/:truck_visit_id/interchanges/:id.json","http_method":"GET","short_description":"Get details of an interchange for a truck visit.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eShow interchange for a given interchange ID.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null},{"code":409,"description":"Entity conflict.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"\n\u003cp\u003eInterchange ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_visit_id","full_name":"truck_visit_id","description":"\n\u003cp\u003eTruck visit ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl --location --request GET 'https://app.octopi.co/api/v1/truck_visits/34234/interchanges/123.json'     --header 'Content-Type: application/json'\n","{\n  \"truck_visit_id\": 34234,\n  \"action_type\": \"interchange_in\",\n  \"container_number\": \"CONZ1234674\",\n  \"container_status\": \"full\",\n  \"container_usage\": 0,\n  \"container_has_damage\": null,\n  \"container_vgm\": null,\n  \"container_seal\": null,\n  \"booking\": \"BOOKING12APR\",\n  \"export_release\": \"EXP1\",\n  \"bill_of_lading\": null,\n  \"delivery_order\": null,\n  \"chassis_number\": \"TESTCH-201\",\n  \"chassis_weight\": null,\n  \"genset\": null,\n  \"genset_seal\": null,\n  \"genset_fuel_level\": null,\n  \"genset_has_reefer_compartment_seal\": null,\n  \"genset_weight\": null,\n  \"reefer_temperature\": null,\n  \"reefer_temperature_unit\": null,\n  \"reefer_set_point_temperature\": null,\n  \"operating_reefer\": false,\n  \"reefer_supply_temperature\": null,\n  \"reefer_humidity\": null,\n  \"reefer_ventilation\": null,\n  \"scale_weight\": null,\n  \"truck_weight\": null,\n  \"completed_at\": null,\n  \"interchange\": null\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/truck_visits-interchanges/destroy","name":"destroy","apis":[{"api_url":"/api/v1/truck_visits/:truck_visit_id/interchanges/:id.json","http_method":"DELETE","short_description":"Delete a truck visit's interchange.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to delete an interchange for a specific truck visit.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null},{"code":409,"description":"Entity conflict.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"\n\u003cp\u003eInterchange ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_visit_id","full_name":"truck_visit_id","description":"\n\u003cp\u003eTruck visit ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/truck_visits/123/interchanges/353388.json\" -X DELETE -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR TOKEN HERE\"\n","{\n  \"id\": 353388\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/truck_visits-interchanges/create","name":"create","apis":[{"api_url":"/api/v1/truck_visits/:truck_visit_id/interchanges.json","http_method":"POST","short_description":"Create an interchange for a truck visit.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eCreate an interchange for a truck visit.\u003c/p\u003e\n\n\u003cp\u003eNote: Some parameters have conditional requirements based on organization settings: - The ‘usage’ parameter is required for depot terminal organizations when container_status is ‘full’ - The ‘export_release_number’ parameter is required for empty containers when the organization requires export releases\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null},{"code":409,"description":"Entity conflict.","metadata":null}],"params":[{"name":"truck_visit_id","full_name":"truck_visit_id","description":"\n\u003cp\u003eTruck visit ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"purpose","full_name":"purpose","description":"\n\u003cp\u003ePurpose of the interchange.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003edrop_off_container\u003c/code\u003e, \u003ccode\u003epick_up_container\u003c/code\u003e, \u003ccode\u003edrop_off_chassis\u003c/code\u003e, \u003ccode\u003epick_up_chassis\u003c/code\u003e, \u003ccode\u003edrop_off_genset\u003c/code\u003e, \u003ccode\u003epick_up_genset\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_number","full_name":"container_number","description":"\n\u003cp\u003eContainer number to create interchange.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_status","full_name":"container_status","description":"\n\u003cp\u003eContainer status.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003efull\u003c/code\u003e, \u003ccode\u003eempty\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"usage","full_name":"usage","description":"\n\u003cp\u003eContainer usage type. Required for depot terminal organizations when container_status is ‘full’.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003eimport\u003c/code\u003e, \u003ccode\u003eexport\u003c/code\u003e, \u003ccode\u003eunknown\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"booking_number","full_name":"booking_number","description":"\n\u003cp\u003eBooking number for the interchange.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_type_label","full_name":"container_type_label","description":"\n\u003cp\u003eContainer type label.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"chassis_number","full_name":"chassis_number","description":"\n\u003cp\u003eChassis number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"genset_number","full_name":"genset_number","description":"\n\u003cp\u003eGenset number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"export_release_number","full_name":"export_release_number","description":"\n\u003cp\u003eExport release number for the interchange. Required for empty containers when organization requires export releases.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"bill_of_lading_number","full_name":"bill_of_lading_number","description":"\n\u003cp\u003eBill of lading number for the interchange.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"delivery_order_number","full_name":"delivery_order_number","description":"\n\u003cp\u003eDelivery order number for the interchange.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"completed_at","full_name":"completed_at","description":"\n\u003cp\u003eThe date and time at which interchange was completed, in ISO 8601 format (Eg 2023-04-13T14:30:00Z). Providing this value will create the interchange with a completed status.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"temperature_letter_port_of_discharge","full_name":"temperature_letter_port_of_discharge","description":"\n\u003cp\u003eTemperature letter port of discharge (eg. “HTPAP”)\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"temperature_letter_vgm","full_name":"temperature_letter_vgm","description":"\n\u003cp\u003eTemperature letter VGM in your organization’s weight unit preference (eg. 2345.0)\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"flex_attributes","full_name":"flex_attributes","description":"\n\u003cp\u003eHash of flex field values for the container. Keys are flex field names, values are the field values.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl --location --request POST 'https://app.octopi.co/api/v1/truck_visits/1876441/interchanges.json'\n  --header 'Content-Type: application/json'\n  --data-raw '{\n    \"purpose\": \"drop_off_container\",\n    \"container_number\": \"CAIU2340022\",\n    \"container_status\": \"full\",\n    \"usage\": \"export\",\n    \"booking_number\": \"10543688\",\n    \"chassis_number\": \"SEFZ104186\",\n    \"flex_attributes\": {\n      \"Seal Number\": \"SEAL123\",\n      \"Inspector Name\": \"John Doe\"\n    }\n  }'\n","{\n  \"id\": 12345,\n  \"container_status\": \"full\",\n  \"truck_visit_id\": 4567,\n  \"complete\": false,\n  \"completed_at\": null,\n  \"for_container\": true,\n  \"for_chassis\": false,\n  \"for_genset\": false,\n  \"type\": \"interchange_in\",\n  \"container\": {\n      \"id\": 1119659,\n      \"number\": \"CAIU2340022\",\n      \"status\": \"full\",\n      \"has_damages\": false,\n      \"is_reefer\": false,\n      \"is_flatrack\": false,\n      \"unlifted_holds_exist\": false,\n      \"chassis\": {\n        \"id\": 882733,\n        \"number\": \"SEFZ104186\"\n      }\n  },\n  \"chassis\": {\n    \"id\": 882733,\n    \"number\": \"SEFZ104186\"\n  },\n  \"booking\": {\n    \"id\": 287504,\n    \"trucking_company_id\": 467,\n    \"is_runner\": false,\n    \"booking_number\": \"10543688\",\n    \"voyage_number\": \"200S\",\n    \"ship_name\": \"FS IPANEMA\",\n    \"port_of_discharge\": \"ARUBA (AWAUA)\",\n    \"port_of_loading\": \"PORT EVERGLADES (USPEF)\",\n    \"port_of_delivery\": \"ARUBA (AWAUA)\",\n    \"shipper\": {\n      \"name\": \"SHIPPER INC.\"\n    },\n    \"trucking_company\": {\n      \"name\": \"Seaboard\"\n    },\n    \"items\": [\n      {\n        \"id\": 16193771,\n        \"line_item_number\": 10,\n        \"quantity\": 1,\n        \"description\": \"\",\n        \"container\": {\n          \"id\": null,\n          \"display_name\": null\n        },\n        \"dock_receipt_cargos\": [],\n        \"hazmat_codes\": [],\n        \"hazmat_ids_and_codes\": {},\n        \"hazmat_classes\": [],\n        \"container_type\": {\n          \"label\": \"20CT\"\n        }\n      },\n      {\n        \"id\": 1395330,\n        \"line_item_number\": 4,\n        \"quantity\": 1,\n        \"description\": \"CARGO NOS\",\n        \"container\": {\n          \"id\": null,\n          \"display_name\": null\n        },\n        \"dock_receipt_cargos\": [],\n        \"hazmat_codes\": [],\n        \"hazmat_ids_and_codes\": {},\n        \"hazmat_classes\": [],\n        \"container_type\": {\n          \"label\": \"40HC\"\n        }\n      }\n    ],\n    \"all_items\": [\n      {\n        \"id\": 16193771,\n        \"line_item_number\": 10,\n        \"quantity\": 1,\n        \"description\": \"\",\n        \"container\": {\n          \"id\": null,\n          \"display_name\": null\n        },\n        \"dock_receipt_cargos\": [],\n        \"hazmat_codes\": [],\n        \"hazmat_ids_and_codes\": {},\n        \"hazmat_classes\": [],\n        \"container_type\": {\n          \"label\": \"20CT\"\n        }\n      },\n      {\n        \"id\": 1395327,\n        \"line_item_number\": 1,\n        \"quantity\": 1,\n        \"description\": \"CARGO NOS\",\n        \"container\": {\n          \"id\": 1101190,\n          \"display_name\": \"BSIU2346474\"\n        },\n        \"dock_receipt_cargos\": [],\n        \"hazmat_codes\": [],\n        \"hazmat_ids_and_codes\": {},\n        \"hazmat_classes\": [],\n        \"container_type\": {\n          \"label\": \"20CT\"\n        }\n      },\n      {\n        \"id\": 1395328,\n        \"line_item_number\": 2,\n        \"quantity\": 1,\n        \"description\": \"CARGO NOS\",\n        \"container\": {\n          \"id\": 1119413,\n          \"display_name\": \"SMLU7903607\"\n        },\n        \"dock_receipt_cargos\": [],\n        \"hazmat_codes\": [],\n        \"hazmat_ids_and_codes\": {},\n        \"hazmat_classes\": [],\n        \"container_type\": {\n          \"label\": \"20CT\"\n        }\n      },\n      {\n        \"id\": 1395330,\n        \"line_item_number\": 4,\n        \"quantity\": 1,\n        \"description\": \"CARGO NOS\",\n        \"container\": {\n          \"id\": null,\n          \"display_name\": null\n        },\n        \"dock_receipt_cargos\": [],\n        \"hazmat_codes\": [],\n        \"hazmat_ids_and_codes\": {},\n        \"hazmat_classes\": [],\n        \"container_type\": {\n          \"label\": \"40HC\"\n        }\n      },\n      {\n        \"id\": 1395329,\n        \"line_item_number\": 3,\n        \"quantity\": 1,\n        \"description\": \"CARGO NOS\",\n        \"container\": {\n          \"id\": 1119444,\n          \"display_name\": \"SMLU3105445\"\n        },\n        \"dock_receipt_cargos\": [],\n        \"hazmat_codes\": [],\n        \"hazmat_ids_and_codes\": {},\n        \"hazmat_classes\": [],\n        \"container_type\": {\n          \"label\": \"20CT\"\n        }\n      },\n      {\n        \"id\": 1395333,\n        \"line_item_number\": 7,\n        \"quantity\": 1,\n        \"description\": \"CARGO NOS\",\n        \"container\": {\n          \"id\": 1114166,\n          \"display_name\": \"TCNU6028886\"\n        },\n        \"dock_receipt_cargos\": [],\n        \"hazmat_codes\": [],\n        \"hazmat_ids_and_codes\": {},\n        \"hazmat_classes\": [],\n        \"container_type\": {\n          \"label\": \"40HC\"\n        }\n      }\n    ]\n  },\n  \"export_release\": null\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/truck_visits-interchanges/update","name":"update","apis":[{"api_url":"/api/v1/truck_visits/:truck_visit_id/interchanges/:id.json","http_method":"PATCH","short_description":"Update an interchange's attributes.","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to update a pending interchange.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null},{"code":409,"description":"Entity conflict.","metadata":null}],"params":[{"name":"id","full_name":"id","description":"\n\u003cp\u003eInterchange ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"truck_visit_id","full_name":"truck_visit_id","description":"\n\u003cp\u003eTruck visit ID.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_number","full_name":"container_number","description":"\n\u003cp\u003eThe container number used for the interchange.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_type_label","full_name":"container_type_label","description":"\n\u003cp\u003eContainer type label.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"booking_number","full_name":"booking_number","description":"\n\u003cp\u003eThe booking number used for the interchange.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"chassis_number","full_name":"chassis_number","description":"\n\u003cp\u003eThe chassis number used for the interchange.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"genset_number","full_name":"genset_number","description":"\n\u003cp\u003eThe genset number used for the interchange.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"export_release_number","full_name":"export_release_number","description":"\n\u003cp\u003eExport release number used for the interchange.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"bill_of_lading_number","full_name":"bill_of_lading_number","description":"\n\u003cp\u003eBill of lading number used for the interchange.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"delivery_order_number","full_name":"delivery_order_number","description":"\n\u003cp\u003eDelivery order number used for the interchange.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"completed_at","full_name":"completed_at","description":"\n\u003cp\u003eThe date and time at which interchange was completed, in ISO 8601 format (Eg 2023-04-13T14:30:00Z). Providing this value will update the interchange with a completed status.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"flex_attributes","full_name":"flex_attributes","description":"\n\u003cp\u003eHash of flex field values for the container. Keys are flex field names, values are the field values. Required flex fields must be provided when completing an interchange.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/truck_visits/123/interchanges/12345.json\" -X PATCH -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\n-d '{\n  \"container_number\": \"CON123456\",\n  \"booking_number\": \"BOOK1234\",\n  \"chassis_number\": \"CH1234\",\n  \"genset_number\": \"GEN123\",\n  \"export_release_number\": \"EXP123\",\n  \"bill_of_lading_number\":  null,\n  \"delivery_order_number\":  null,\n  \"completed_at\": \"2023-06-28T21:12:29.128+09:00\",\n  \"flex_attributes\": {\n    \"Seal Number\": \"SEAL456\",\n    \"Inspector Name\": \"Jane Smith\"\n  }\n}'\n","{\n  \"id\": 12345,\n  \"container_status\": \"full\",\n  \"truck_visit_id\": 123456,\n  \"complete\": true,\n  \"completed_at\": \"2023-07-03T09:24:09-05:00\",\n  \"for_container\": true,\n  \"for_chassis\": false,\n  \"for_genset\": false,\n  \"type\": \"interchange_in\",\n  \"container\": {\n    \"id\": 12345,\n    \"number\": \"CON123456\",\n    \"status\": \"full\",\n    \"has_damages\": false,\n    \"is_reefer\": false,\n    \"is_flatrack\": false,\n    \"unlifted_holds_exist\": false\n  },\n  \"booking\": {\n    \"id\": 123456,\n    \"trucking_company_id\": null,\n    \"is_runner\": true,\n    \"booking_number\": \"111111\",\n    \"voyage_number\": null,\n    \"ship_name\": null,\n    \"port_of_discharge\": null,\n    \"port_of_loading\": null,\n    \"port_of_delivery\": null,\n    \"items\": [],\n    \"all_items\": []\n  },\n  \"export_release\": null,\n  \"interchange\": null\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"vehicles-flex_fields":{"doc_url":"/api/v1/documentation/1.0/vehicles-flex_fields","id":"vehicles-flex_fields","api_url":"/api/v1","name":"Vehicles::Flex_fields","short_description":"This resource allows you to manage flex field values for vehicles.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/vehicles-flex_fields/show","name":"show","apis":[{"api_url":"/api/v1/vehicles/:vehicle_id/flex_fields/:label.json","http_method":"GET","short_description":"Get a specific flex field value for a vehicle","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to get a specific flex field value for a vehicle.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":400,"description":"Bad request.","metadata":null},{"code":422,"description":"Unprocessable entity.","metadata":null},{"code":500,"description":"Internal server error.","metadata":null}],"params":[{"name":"vehicle_id","full_name":"vehicle_id","description":"\n\u003cp\u003eThe Octopi ID of the vehicle.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"label","full_name":"label","description":"\n\u003cp\u003eThe label of the flex field.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/vehicles/4337813/flex_fields/color.json\" \\\n-X GET \\\n-H \"Accept: application/json\" \\\n-H \"Content-Type: application/json\" \\\n-H \"Authorization: Token token=YOUR_TOKEN\"\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/vehicles-flex_fields/update","name":"update","apis":[{"api_url":"/api/v1/vehicles/:vehicle_id/flex_fields/:label.json","http_method":"PUT","short_description":"Create or update a flex field value for a vehicle","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to create or update a flex field value for a vehicle.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":400,"description":"Bad request.","metadata":null},{"code":422,"description":"Unprocessable entity.","metadata":null},{"code":500,"description":"Internal server error.","metadata":null}],"params":[{"name":"vehicle_id","full_name":"vehicle_id","description":"\n\u003cp\u003eThe Octopi ID of the vehicle.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"label","full_name":"label","description":"\n\u003cp\u003eThe label of the flex field.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"value","full_name":"value","description":"\n\u003cp\u003eThe value to set for the flex field.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/vehicles/4337813/flex_fields/color.json\" \\\n-X PUT \\\n-H \"Accept: application/json\" \\\n-H \"Content-Type: application/json\" \\\n-H \"Authorization: Token token=YOUR_TOKEN\" \\\n-d '{\"value\": \"Red\"}'\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/vehicles-flex_fields/destroy","name":"destroy","apis":[{"api_url":"/api/v1/vehicles/:vehicle_id/flex_fields/:label.json","http_method":"DELETE","short_description":"Delete a flex field value for a vehicle","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to delete a flex field value for a vehicle. This removes the value but does not delete the flex field definition.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":400,"description":"Bad request.","metadata":null},{"code":422,"description":"Unprocessable entity.","metadata":null},{"code":500,"description":"Internal server error.","metadata":null}],"params":[{"name":"vehicle_id","full_name":"vehicle_id","description":"\n\u003cp\u003eThe Octopi ID of the vehicle.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"label","full_name":"label","description":"\n\u003cp\u003eThe label of the flex field.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/vehicles/4337813/flex_fields/color.json\" \\\n-X DELETE \\\n-H \"Accept: application/json\" \\\n-H \"Authorization: Token token=YOUR_TOKEN\"\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"voyages-bill_of_ladings":{"doc_url":"/api/v1/documentation/1.0/voyages-bill_of_ladings","id":"voyages-bill_of_ladings","api_url":"/api/v1","name":"Voyages::Bill_of_ladings","short_description":"This resources allows you to fetch cargo information (Bill Of Lading and Packing List Items) for a voyage","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/voyages-bill_of_ladings/index","name":"index","apis":[{"api_url":"/api/v1/voyages/:voyage_number/bill_of_ladings.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis endpoint returns a list of bill of ladings and their packing list items for a voyage.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"voyage_number","full_name":"voyage_number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/voyages/VOYAGE_NUMBER/bill_of_ladings.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOUR_TOKEN\"\n","{\n   \"bill_of_ladings\":[\n     {\n       \"manifest\":{\n         \"client_identifier\":null\n       },\n       \"cargo\" : [\n         {\n            \"container_type\" : {\n               \"iso_type_code\" : \"20T0\",\n               \"description\" : \"\",\n               \"code\" : \"20TK\"\n            },\n            \"id\" : 12,\n            \"actions\" : {\n               \"show\" : {\n                  \"method\" : \"GET\",\n                  \"url\" : \"https://app.octopi.co/api/v1/containers/ABCU1234567.json\"\n               },\n               \"movements\" : {\n                  \"method\" : \"GET\",\n                  \"url\" : \"https://app.octopi.co/api/v1/containers/ABCU1234567/movements.json\"\n               }\n            },\n            \"quantity\" : 1,\n            \"reference_number\" : null,\n            \"cargo_type\" : \"container\",\n            \"number\" : \"ABCU1234567\",\n            \"package_type_code\" : null,\n            \"description\" : \"REFRIGRATED LIQUID OXYGEN\"\n         },\n         {\n            \"package_type_code\" : \"IA\",\n            \"package_type\" : \"pkg\",\n            \"description\" : \"BANANAS\",\n            \"id\" : 25,\n            \"reference_number\" : '121agda12',\n            \"actions\" : {\n               \"show\" : {\n                 \"url\" : \"https://app.octopi.co/api/v1/containers/25.json\",\n                  \"method\" : \"GET\"\n               },\n               \"movements\" : {\n                  \"method\" : \"GET\",\n                  \"url\" : \"https://app.octopi.co/api/v1/containers/25/movements.json\"\n               }\n            },\n            \"cargo_type\" : \"breakbulk\",\n            \"number\" : null,\n            \"quantity\" : 225\n         }\n       ],\n       \"number\":\"COSU6156797970\",\n       \"quantity\": \"1,\n       \"remarks\":null,\n       \"weight\":22048.0,\n       \"volume_in_cubic_meters\":\"0.00\",\n       \"goods_description\":\"13 PALLETS 1,194 PCSAUTOMOTIVE BATTERIESCONTRACT NO. : 2P17100001\",\n       \"destination_code\": \"S4B4\",\n       \"usage\": \"import\",\n       \"port_of_loading\":{\n         \"locode\":\"JMKST\"\n       },\n       \"port_of_discharge\":{\n         \"locode\":\"HTPAP\"\n       },\n       \"consignee\":{\n         \"id\": 123,\n         \"name\":\"P.R.ENTREPRISE S.A.\"\n       },\n       \"consignee_address\":null,\n       \"exporter\":{\n         \"name\":\"ATLASBX CO., LTD\"\n       },\n       \"exporter_address\":null,\n       \"shipping_marks\":\"M\",\n       \"package_type\":{\n         \"code\":\"1D\",\n         \"description\": \"Drum\"\n       },\n       \"has_packing_list_items\":false,\n       \"packing_list_items\":[]},\n       \"actions\":{\n         \"show\":{\n           \"method\":\"GET\",\n           \"url\":\"http://app.octopi.co/api/v1/voyages/VOYAGE_NUMBER/bill_of_ladings/COSU6156797970.json\"\n         }\n       }\n     },\n     {\n       \"manifest\":{\n         \"client_identifier\":null\n       },\n       \"number\":\"COSU6156797975\",\n       \"quantity\":1,\n       \"remarks\":null,\n       \"weight\":22048.0,\n       \"volume_in_cubic_meters\":\"0.00\",\n       \"goods_description\":\"13 PALLETS 1,194 PCSAUTOMOTIVE BATTERIESCONTRACT NO. : 2P17100001\",\n       \"destination_code\": \"S4B4\",\n       \"usage\": \"import\",\n       \"port_of_loading\":{\n         \"locode\":\"JMKST\"\n       },\n       \"port_of_discharge\":{\n         \"locode\":\"HTPAP\"\n       },\n       \"consignee\":{\n         \"id\": 444,\n         \"name\":\"P.R.ENTREPRISE S.A.\",\n         \"address\": \"10 Wall St\"\n       },\n       \"consignee_address\": \"10 Wall St\",\n       \"exporter\":{\n         \"id\": 1231,\n         \"name\":\"ATLASBX CO., LTD\",\n         \"address\": \"123 Main St\"\n       },\n       \"exporter_address\": \"123 Main St\",\n       \"shipping_marks\":\"M\",\n       \"package_type\":{\n         \"code\":\"1D\",\n         \"description\": \"Drum\"\n       },\n       \"has_packing_list_items\":true,\n       \"packing_list_items\":[\n         {\n           \"id\":27908,\n           \"reference_number\":\"ELNUMBER\",\n           \"bill_of_lading\":{\n             \"number\":\"COSU6156797975\"\n           },\n           \"container\":{\n             \"number\":\"CCLU3597801\"\n           },\n           \"consignee\":{\n             \"name\":\"ACCENT DECOR  CADEAUX\"\n           },\n           \"quantity\":100,\n           \"weight\":0.0,\n           \"volume\":0.0,\n           \"package_type\":{\n             \"code\":\"1D\",\n             \"description\":\"drum\"\n           },\n           \"description\":\"STUFF\",\n           \"consignee_address\":\"\",\n           \"shipping_marks\":\"\",\n           \"dock_receipt_number\":\"\",\n           \"has_been_stripped\":false,\n           \"has_been_delivered\":false,\n           \"stripped_quantity\":0\n         }\n       ]\n       \"actions\":{\n         \"show\":{\n           \"method\":\"GET\",\n           \"url\":\"http://app.octopi.co/api/v1/voyages/VOYAGE_NUMBER/bill_of_ladings/COSU6156797975.json\"\n         }\n       }\n     }\n   ]\n }\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/voyages-bill_of_ladings/show","name":"show","apis":[{"api_url":"/api/v1/voyages/VOYAGE_NUMBER/bill_of_ladings/BILL_OF_LADING_NUMBER.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint will return a bill of lading.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"voyage_number","full_name":"voyage_number","description":"\n\u003cp\u003eThe bill of lading number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"bill_of_lading_number","full_name":"bill_of_lading_number","description":"\n\u003cp\u003eThe bill of lading number.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/voyages/VOYAGE_NUMBER/bill_of_ladings/BILL_OF_LADING_NUMBER.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=ADD TOKEN HERE\"\n","{\n  \"bill_of_lading\": {\n    \"manifest\":{\n     \"client_identifier\":null\n    },\n    \"number\":\"COSU6156797970\",\n    \"quantity\":1,\n    \"remarks\":null,\n    \"weight\":22048.0,\n    \"volume_in_cubic_meters\":\"0.00\",\n    \"goods_description\":\"13 PALLETS 1,194 PCSAUTOMOTIVE BATTERIESCONTRACT NO. : 2P17100001\",\n    \"destination_code\": \"S4B4\",\n    \"usage\": \"import\",\n    \"manifested_count\": 2,\n    \"cargo_at_terminal_destination_count\":2,\n    \"cargo_at_terminal_count\":2,\n    \"cargo_delivered_count\":1,\n    \"packing_list_items_at_terminal_destination_count\":2,\n    \"packing_list_items_at_terminal_count\":2,\n    \"packing_list_items_delivered_count\":0,\n    \"port_of_loading\":{\n     \"locode\":\"JMKST\"\n    },\n    \"port_of_discharge\":{\n      \"locode\":\"HTPAP\"\n    },\n    \"consignee\":{\n      \"id\": 444,\n      \"name\":\"P.R.ENTREPRISE S.A.\",\n      \"address\": \"10 Wall St\"\n    },\n    \"consignee_address\": \"10 Wall St\",\n    \"exporter\":{\n      \"id\": 1231,\n      \"name\":\"ATLASBX CO., LTD\",\n      \"address\": \"123 Main St\"\n    },\n    \"exporter_address\": \"123 Main St\",\n    \"shipping_marks\":\"M\",\n    \"package_type\":{\n      \"code\":\"1D\",\n      \"description\": \"Drum\"\n    },\n    \"has_packing_list_items\":false,\n    \"cargo\":[{\n      \"number\": \"12345RACK\",\n      \"size\": \"20GT\",\n      \"is_reefer\": true,\n      \"reefer_plugged_in_time_in_hours\": 8\n      \"reefer_plugged_in_time_in_minutes\": 60\n      \"reefer_plug_movements\" [{\n        \"plug_action\": \"plugged_in\",\n        \"plug_action_at\": \"2018-02-22T01:12:14Z\"\n      }]\n      \"cargo_type\": \"container\",\n      \"container_status\": \"full\",\n      \"weight\": 34556,\n      ...\n    }],\n    \"packing_list_items\":[\n      {\n        \"id\":200214,\n        \"reference_number\":\"\",\n        \"bill_of_lading\":{\"number\":\"number:one\"},\n        \"container\":{\"number\":\"BMLU5000813\"},\n        \"consignee\":{\"name\":\"CABBAGE PALM INVESTMENTS INC\"},\n        \"quantity\":100,\n        \"weight\":0.0,\n        \"volume\":0.0,\n        \"package_type\":\n          {\n            \"code\":\"1D\",\n            \"description\":\"drum\"\n          },\n        \"description\":\"100 drums\",\n        \"consignee_address\":\"\",\n        \"shipping_marks\":\"\",\n        \"dock_receipt_number\":\"\",\n        \"has_been_stripped\":false,\n        \"has_been_delivered\":false,\n        \"stripped_quantity\":0\n      },\n      {\n        \"id\":200213,\n        \"reference_number\":\"\",\n        \"bill_of_lading\":{\n          \"number\":\"number:one\"\n        },\n        \"container\":{\n          \"number\":\"BMLU5000813\"\n        },\n        \"consignee\":{\n          \"name\":\"ACCENT \u0026 DECOR INC\"\n        },\n        \"quantity\":100,\n        \"weight\":0.0,\n        \"volume\":0.0,\n        \"package_type\":{\n          \"code\":\"2C\",\n          \"description\":\"barrel\"\n        },\n        \"description\":\"2c Barrels\",\n        \"consignee_address\":\"\",\n        \"shipping_marks\":\"\",\n        \"dock_receipt_number\":\"\",\n        \"has_been_stripped\":false,\n        \"has_been_delivered\":false,\n        \"stripped_quantity\":75\n       }\n    ],\n    \"actions\":{\n      \"show\":{\n        \"method\":\"GET\",\n        \"url\":\"http://app.octopi.co/api/v1/voyages/VOYAGE_NUMBER/bill_of_ladings/COSU6156797970.json\"\n      }\n    }\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"voyages-consignees":{"doc_url":"/api/v1/documentation/1.0/voyages-consignees","id":"voyages-consignees","api_url":"/api/v1","name":"Voyages::Consignees","short_description":"This resources allows you to fetch consignees for voyages","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/voyages-consignees/index","name":"index","apis":[{"api_url":"/api/v1/voyages/:number/consignees.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis endpoint returns a list of consignees for a voyage.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"number","full_name":"number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/voyages/ADD NUMBER HERE/consignees.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n","{\n  \"consignees\" : [\n    {\n      \"id\": 123,\n      \"name\" : \"Consignee Name\"\n    },\n    {\n      \"id\": 124,\n      \"name\" : \"Consignee Name\"\n    }\n   ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"voyages-flex_fields":{"doc_url":"/api/v1/documentation/1.0/voyages-flex_fields","id":"voyages-flex_fields","api_url":"/api/v1","name":"Voyages::Flex_fields","short_description":"[DEPRECATED] This resource allows you modify flex fields for voyages in Octopi.","full_description":"\n\u003cp\u003e[DEPRECATED] Please use the Containers API to manage flex flex fields for voyages. This resource allows you to access flex fields for voyages in Octopi\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/voyages-flex_fields/update","name":"update","apis":[{"api_url":"/api/v1/voyages/:number/flex_fields/:label","http_method":"PUT","short_description":"Updates a Voyage","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003e[DEPRECATED] Please use the Containers API to manage flex flex fields for voyages. This resource allows you to access flex fields for voyages in Octopi.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"number","full_name":"number","description":"\n\u003cp\u003eVoyage number\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"label","full_name":"label","description":"\n\u003cp\u003eLabel of the flex field\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"value","full_name":"value","description":"\n\u003cp\u003eValue of the flex field to change\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/voyages/NUMBER/flex_fields/flex_field_label\" \\\n     -X PUT \\\n     \"Authorization: Token token=ADD TOKEN HERE\" \\\n     -d '{ \"value\": \"FLEX_FIELD_VALUE\" }'\n","\"value\": \"FLEX_FIELD_VALUE\" "],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"voyages-load_lists":{"doc_url":"/api/v1/documentation/1.0/voyages-load_lists","id":"voyages-load_lists","api_url":"/api/v1","name":"Voyages::Load_lists","short_description":"This resource allows you to interact with voyage dynamic load list in Octopi.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/voyages-load_lists/show","name":"show","apis":[{"api_url":"/api/v1/voyages/:voyage_number/load_list.json","http_method":"GET","short_description":"Returns information about the Voyage load list","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"voyage_number","full_name":"voyage_number","description":"\n\u003cp\u003eThis must be a voyage number that exists in Octopi.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/voyages/VOYAGE_NUMBER/load_list' \\\n  -X 'GET' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n","{\n  \"id\": 7,\n  \"voyage\": {\n    \"id\": 42,\n    \"name\": \"OCTORJ 20251022\"\n  },\n  \"tally\": {\n    \"id\": 29,\n    \"name\": \"OCTORJ 20251022 Loading\"\n  },\n  \"created_by\": {\n    \"name\": \"Demo User\"\n  },\n  \"shipping_line_voyage_numbers\": {\n    \"REMAKE\": \"20251022\",\n    \"OCTO\": \"20251022\"\n  },\n  \"created_at\": \"2025-10-22T08:16:11-04:00\",\n  \"updated_at\": \"2025-10-31T06:39:24-04:00\"\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/voyages-load_lists/create","name":"create","apis":[{"api_url":"/api/v1/voyages/:voyage_number/load_list.json","http_method":"POST","short_description":"Creates a new Dynamic Load List for the voyage","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"voyage_number","full_name":"voyage_number","description":"\n\u003cp\u003eThis must be a voyage number that exists in Octopi.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/voyages/VOYAGE_NUMBER/load_list' \\\n  -X 'POST' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n","{\n  \"id\": 7,\n  \"voyage\": {\n    \"id\": 42,\n    \"name\": \"OCTORJ 20251022\"\n  },\n  \"tally\": {\n    \"id\": 29,\n    \"name\": \"OCTORJ 20251022 Loading\"\n  },\n  \"created_by\": {\n    \"name\": \"Demo User\"\n  },\n  \"shipping_line_voyage_numbers\": {\n    \"REMAKE\": \"20251022\",\n    \"OCTO\": \"20251022\"\n  },\n  \"created_at\": \"2025-10-22T08:16:11-04:00\",\n  \"updated_at\": \"2025-10-31T06:39:24-04:00\"\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/voyages-load_lists/update","name":"update","apis":[{"api_url":"/api/v1/voyages/:voyage_number/load_list.json","http_method":"PUT","short_description":"Assigns voyages numbers to the shipping lines","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"voyage_number","full_name":"voyage_number","description":"\n\u003cp\u003eThis must be a voyage number that exists in Octopi.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_line_voyage_numbers","full_name":"shipping_line_voyage_numbers","description":"\n\u003cp\u003eHash of fixed keys. Keys(shipping line codes) cannot be changed; only values can be updated.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/voyages/VOYAGE_NUMBER/load_list' \\\n  -X 'PUT' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN' \\\n  -d '{\n    \"shipping_line_voyage_numbers\": {\n      \"OCTO\": \"20251022\",\n      \"REMAKE\": \"20251022\"\n    }\n  }'\n","{\n  \"id\": 7,\n  \"voyage\": {\n    \"id\": 42,\n    \"name\": \"OCTORJ 20251022\"\n  },\n  \"tally\": {\n    \"id\": 29,\n    \"name\": \"OCTORJ 20251022 Loading\"\n  },\n  \"created_by\": {\n    \"name\": \"Demo User\"\n  },\n  \"shipping_line_voyage_numbers\": {\n    \"REMAKE\": \"20251022\",\n    \"OCTO\": \"20251022\"\n  },\n  \"created_at\": \"2025-10-22T08:16:11-04:00\",\n  \"updated_at\": \"2025-10-31T06:39:24-04:00\"\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"voyages-movements":{"doc_url":"/api/v1/documentation/1.0/voyages-movements","id":"voyages-movements","api_url":"/api/v1","name":"Voyages::Movements","short_description":"This resource allows you to fetch movements for containers that were either discharged or loaded on a voyage.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/voyages-movements/index","name":"index","apis":[{"api_url":"/api/v1/voyages/:number/movements.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"number","full_name":"number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_number","full_name":"container_number","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003eSpecify which page of results to fetch. This value defaults to 1.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per","full_name":"per","description":"\n\u003cp\u003eThe number of items to be displayed. This value defaults to 10 and accepts a maximum of 100.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a number.","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/voyages/VOYAGE123/movements.json?container_number=CONTAINER123\" \\\n  -H \"Accept: application/json\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Token token=YOURTOKEN\"\n","{\n  \"movements\" : [\n     {\n       \"id\": 186,\n       \"movement_type\": \"loading\",\n       \"moved_at\": \"2023-02-16T09:52:42Z\",\n       \"user\": {\n           \"name\": \"Test\",\n           \"email\": \"test@test.com\"\n       },\n       \"status\": \"full\",\n       \"source_type\": \"ShippingLine\",\n       \"source\": {\n           \"name\": \"MAERSK\"\n       },\n       \"destination_type\": \"Voyage\",\n       \"destination\": {\n           \"name\": \"Voyage: VOYAGE123\"\n       },\n       \"container\": {\n           \"number\": \"CONTAINER123\",\n           \"size\": \"45\",\n           \"is_high_cube\": false,\n           \"is_reefer\": true,\n           \"container_type\": {\n               \"code\": \"45RF\",\n               \"description\": \"REEFER 45\",\n               \"iso_type_code\": \"45U6\"\n           },\n           \"arrival_voyage\": {\n               \"number\": \"GC45667\",\n               \"estimated_time_of_anchorage\": \"2023-02-17T06:21:00Z\",\n               \"vessel\": {\n                   \"name\": \"Vega Luna\"\n               }\n           }\n       },\n       \"original_container_seals\": [],\n       \"stuffed_container_seals\": [],\n       \"new_container_seals\": [],\n       \"truck\": {\n           \"license_plate\": \"TV123\",\n           \"number\": \"123\",\n           \"trucking_company\": {\n               \"name\": \"Some Company\"\n           }\n       },\n       \"arrival_voyage\": {\n           \"id\": 2,\n           \"number\": \"GC45667\",\n           \"status\": \"active\",\n           \"last_port_of_call\": {\n               \"name\": null,\n               \"locode\": null\n           },\n           \"next_port_of_call\": {\n               \"name\": null,\n               \"locode\": null\n           },\n           \"captain\": {\n               \"name\": null\n           },\n           \"agent\": {\n               \"name\": null\n           },\n           \"number_of_tug_boats\": 0,\n           \"arrival_number_of_tug_boats\": null,\n           \"departure_number_of_tug_boats\": 0,\n           \"estimated_time_of_anchorage\": \"2023-02-17T06:21:00Z\",\n           \"actual_time_of_anchorage\": null,\n           \"actual_time_of_pilot_boarded\": null,\n           \"actual_time_of_berth\": null,\n           \"actual_time_of_customs_clearance\": null,\n           \"actual_time_of_departure\": null,\n           \"closing_comments\": null,\n           \"display_name\": \"\",\n           \"actual_time_of_departure_pilot_boarded\": null,\n           \"estimated_time_of_departure\": \"2023-02-21T06:21:00Z\",\n           \"created_at\": \"2023-02-16T09:51:22Z\",\n           \"updated_at\": \"2023-02-22T13:20:04Z\",\n           \"ship\": {\n               \"name\": \"\",\n               \"imo\": \"9773210\",\n               \"call_sign\": \"\",\n               \"vessel_type\": \"Container\",\n               \"loa\": \"\",\n               \"flag\": \"PA\",\n               \"gross_tonnage\": 210691,\n               \"net_tonnage\": 0\n           },\n           \"vessel\": {\n               \"name\": \"\",\n               \"imo\": \"9773210\",\n               \"call_sign\": \"\",\n               \"vessel_type\": \"Container\",\n               \"loa\": \"\",\n               \"flag\": \"PA\",\n               \"gross_tonnage\": 210691,\n               \"net_tonnage\": 0\n           },\n           \"assigned_berth_area\": {\n               \"name\": \"Berth Area BA1\"\n           },\n           \"assigned_yard_area\": {\n               \"name\": null\n           },\n           \"discharge_terminal\": {\n               \"name\": \"South Terminal\"\n           },\n           \"arrival_pilot\": {\n               \"name\": null\n           },\n           \"departure_pilot\": {\n               \"name\": null\n           },\n           \"tax_date\": null\n       }\n   }\n  ],\n  \"actions\" : {\n   \"next_page\" : {\n       \"method\" : \"GET\",\n       \"url\" : \"https://app.octopi.co/api/v1/voyages/VOYAGE123/movements.json?container_number=CONTAINER123\u0026page=2\u0026per=10\"\n   }\n }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"voyages-tallies":{"doc_url":"/api/v1/documentation/1.0/voyages-tallies","id":"voyages-tallies","api_url":"/api/v1","name":"Voyages::Tallies","short_description":"This resource allows you to fetch, create tallies of a voyage.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/voyages-tallies/voyage","name":"voyage","apis":[{"api_url":"/api/v1/voyages/:voyage_number/tallies.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"voyage_number","full_name":"voyage_number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["This endpoint returns information about items that have been tallied.\n","curl \"https://app.octopi.co/api/v1/voyages/VOYAGE_NUMBER/tallies.json\"\n  -H \"Accept: application/json\"\n  -H \"Content-Type: application/json\"\n  -H \"Authorization: Token token=YOUR_TOKEN\"\n","{\n  \"voyage\": {\n    \"number\": \"2015121365\"\n  },\n\n  \"tally_type\": \"discharge\",\n  \"handsets\": 2,\n  \"closed_by\": \"matt@email.com\",\n  \"closed_at\": \"2018-07-23T20:45:04Z\",\n  \"cranes\": [\n    {\n      \"crane\": \"G1\",\n      \"tally\": [\n        {\n          \"number\": \"ZCSU7040010\",\n          \"status\": \"full\",\n          \"usage\": \"transshipment_load\",\n          \"delivery_type\": \"unstuff\",\n          \"arrival_type\": null,\n          \"size\": \"40\",\n          \"is_high_cube\": true,\n          \"is_reefer\": false,\n          \"container_type\": {\n            \"code\": \"40HC\",\n            \"description\": \"\",\n            \"iso_type_code\": \"xxxx\"\n          }\n        },\n        {\n          \"number\": \"CRLU7277030\",\n          \"usage\": \"export\",\n          \"status\": \"full\",\n          \"delivery_type\": \"gate\",\n          \"arrival_type\": null,\n          \"size\": \"40\",\n          \"is_high_cube\": true,\n          \"is_reefer\": true,\n          \"container_type\": {\n            \"code\": \"40RH\",\n            \"description\": \"\",\n            \"iso_type_code\": \"xxxx\"\n          }\n        },\n        {\n          \"number\": \"BMOU2825511\",\n          \"usage\": \"import\",\n          \"status\": \"full\",\n          \"delivery_type\": \"unstuff\",\n          \"arrival_type\": null,\n          \"size\": \"40\",\n          \"is_high_cube\": false,\n          \"is_reefer\": false,\n          \"container_type\": {\n            \"code\": \"40PL\",\n            \"description\": \"\",\n            \"iso_type_code\": \"xxxx\"\n          }\n        },\n        {\n          \"number\": \"BMOU9206864\",\n          \"usage\": \"import\",\n          \"status\": \"full\",\n          \"delivery_type\": \"gate\",\n          \"arrival_type\": null,\n          \"size\": \"40\",\n          \"is_high_cube\": false,\n          \"is_reefer\": false,\n          \"container_type\": {\n            \"code\": \"40PL\",\n            \"description\": \"\",\n            \"iso_type_code\": \"xxxx\"\n          }\n        }\n      ],\n      \"shifted_cargo\": [\n        {\n          \"number\": \"TXXU1456201\",\n          \"restow\": true,\n          \"size\": \"20\",\n          \"is_high_cube\": false,\n          \"is_reefer\": false,\n          \"container_type\": {\n            \"code\": \"20GP\",\n            \"description\": \"\",\n            \"iso_type_code\": \"xxxx\"\n          }\n        },\n        {\n          \"number\": \"TXXU1456789\",\n          \"restow\": false,\n          \"size\": \"40\",\n          \"is_high_cube\": false,\n          \"is_reefer\": false,\n          \"container_type\": {\n            \"code\": \"40DV\",\n            \"description\": \"\",\n            \"iso_type_code\": \"xxxx\"\n          }\n        }\n      ],\n      \"special_lifts\": [\n        {\n          \"lift_type\": \"hatch cover\",\n          \"lifted_at\": \"2018-07-23T20:23:04Z\"\n        },\n        {\n          \"lift_type\": \"gear box\",\n          \"lifted_at\": \"2018-07-23T20:30:04Z\"\n        },\n        {\n          \"lift_type\": \"hatch cover\",\n          \"lifted_at\": \"2018-07-23T20:45:04Z\"\n        },\n        {\n          \"lift_type\": \"multiple\",\n          \"lifted_at\": \"2018-07-23T20:50:04Z\",\n          \"containers\": [\"BMOU2825511\", \"BMOU9206864\"]\n        },\n        {\n          \"lift_type\": \"other\",\n          \"lifted_at\": \"2018-07-23T21:07:04Z\"\n        }\n      ]\n    },\n    {\n      \"crane\": \"G2\",\n      \"tally\": [],\n      \"shifted_cargo\": [],\n      \"special_lifts\": []\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/voyages-tallies/create","name":"create","apis":[{"api_url":"/api/v1/voyages/:voyage_number/tallies.json","http_method":"POST","short_description":"Creates voyage tallies when the corresponding load lists or manifests are present","deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Resource Not Found","metadata":null},{"code":422,"description":"Validation Error","metadata":null},{"code":500,"description":"Internal Server Error","metadata":null}],"params":[{"name":"voyage_number","full_name":"voyage_number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"tally","full_name":"tally","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"tally_type","full_name":"tally[tally_type]","description":"\n\u003cp\u003eIf this value is not provided, both tallies will be created\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003edischarge\u003c/code\u003e, \u003ccode\u003eloading\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/voyages/VOYAGE_NUMBER/tallies' \\\n  -X 'POST' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN' \\\n  -d '{\n    \"tally\": {\n      \"tally_type\": \"loading\"\n    }\n  }'\n","{\n  \"tallies\": [\n    {\n      \"id\": 39,\n      \"name\": \"OCTORJ 20240512 Discharge\",\n      \"tally_type\": \"discharge\",\n      \"voyage\": {\n        \"number\": \"20240512\"\n      },\n      \"created_by\": {\n        \"name\": \"System\"\n      },\n      \"created_at\": \"2025-12-05T05:29:58-05:00\"\n    },\n    {\n      \"id\": 40,\n      \"name\": \"OCTORJ 20240512 Loading\",\n      \"tally_type\": \"loading\",\n      \"voyage\": {\n        \"number\": \"20240512\"\n      },\n      \"created_by\": {\n        \"name\": \"System\"\n      },\n      \"created_at\": \"2025-12-05T05:31:46-05:00\"\n    }\n  ]\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"voyages-voyage_events":{"doc_url":"/api/v1/documentation/1.0/voyages-voyage_events","id":"voyages-voyage_events","api_url":"/api/v1","name":"Voyages::Voyage_events","short_description":"This resource allows you to interact with voyage events in Octopi.","full_description":"\n\u003cp\u003eThis resource allows clients to create, read, update, and delete voyage events for specific voyages. Voyage events represent different activities or milestones that occur during a voyage.\u003c/p\u003e\n\n\u003cp\u003eVoyage events support flex fields, which allow you to store custom data specific to your organization’s needs. Flex fields are passed as an array of key-value pairs using canonical field names in requests, and returned as label-value pairs in responses.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/voyages-voyage_events/index","name":"index","apis":[{"api_url":"/api/v1/voyages/:voyage_number/voyage_events","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eReturns all voyage events for a specific voyage with pagination actions at the beginning of response.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"voyage_number","full_name":"voyage_number","description":"\n\u003cp\u003eThe voyage number to retrieve events for\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"page","full_name":"page","description":"\n\u003cp\u003ePage number for pagination\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"per_page","full_name":"per_page","description":"\n\u003cp\u003eNumber of items per page (max 100)\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["# Get all voyage events (default: page 1, 25 per page)\n# Response includes 'actions' object with pagination URLs for easy navigation\ncurl 'https://app.octopi.co/api/v1/voyages/V001/voyage_events' \\\n  -X 'GET' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n\n# Get 100 events per page (maximum allowed)\ncurl 'https://app.octopi.co/api/v1/voyages/V001/voyage_events?per_page=100' \\\n  -X 'GET' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n\n# Get specific page with custom per_page\ncurl 'https://app.octopi.co/api/v1/voyages/V001/voyage_events?page=2\u0026per_page=50' \\\n  -X 'GET' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n\n","{\n  \"actions\": {\n    \"previous\": {\n      \"url\": \"https://app.octopi.co/api/v1/voyages/V001/voyage_events?page=0\",\n      \"method\": \"GET\"\n    },\n    \"next\": {\n      \"url\": \"https://app.octopi.co/api/v1/voyages/V001/voyage_events?page=2\",\n      \"method\": \"GET\"\n    },\n    \"last\": {\n      \"url\": \"https://app.octopi.co/api/v1/voyages/V001/voyage_events?page=3\",\n      \"method\": \"GET\"\n    },\n    \"index\": {\n      \"url\": \"https://app.octopi.co/api/v1/voyages/V001/voyage_events\",\n      \"method\": \"GET\"\n    }\n  },\n  \"voyage\": {\n    \"id\": 123,\n    \"voyage_number\": \"V001\",\n    \"vessel_name\": \"MSC LORETO\"\n  },\n  \"voyage_events\": [\n    {\n      \"id\": 1,\n      \"event_name\": \"Pilot Boarded\",\n      \"event_type_id\": 5,\n      \"created_at\": \"2024-01-15T10:30:00Z\",\n      \"updated_at\": \"2024-01-15T10:30:00Z\",\n      \"started_at\": \"2024-01-15T10:30:00Z\",\n      \"completed_at\": \"2024-01-15T11:00:00Z\",\n      \"custom_value\": null,\n      \"service_boat\": {\n        \"id\": 2,\n        \"name\": \"Pilot Boat Alpha\"\n      },\n      \"pilot\": {\n        \"id\": 3,\n        \"name\": \"John Smith\"\n      },\n      \"user\": {\n        \"id\": 4,\n        \"name\": \"Jane Doe\"\n      },\n      \"notes\": \"Pilot boarding completed successfully\",\n      \"flex_fields\": [\n        {\n          \"label\": \"delay_reason\",\n          \"value\": \"Weather conditions\"\n        },\n        {\n          \"label\": \"priority_level\",\n          \"value\": \"High\"\n        }\n      ]\n    },\n    {\n      \"id\": 2,\n      \"event_name\": \"Vessel Berthing\",\n      \"event_type_id\": 3,\n      \"created_at\": \"2024-01-15T11:15:00Z\",\n      \"updated_at\": \"2024-01-15T11:15:00Z\",\n      \"started_at\": \"2024-01-15T11:15:00Z\",\n      \"completed_at\": \"2024-01-15T11:45:00Z\",\n      \"custom_value\": null,\n      \"service_boat\": null,\n      \"pilot\": {\n        \"id\": 3,\n        \"name\": \"John Smith\"\n      },\n      \"user\": {\n        \"id\": 4,\n        \"name\": \"Jane Doe\"\n      },\n      \"notes\": \"Vessel successfully berthed at terminal\",\n      \"flex_fields\": [\n        {\n          \"label\": \"berth_condition\",\n          \"value\": \"Excellent\"\n        }\n      ]\n    }\n  ]\n}\n\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/voyages-voyage_events/create","name":"create","apis":[{"api_url":"/api/v1/voyages/:voyage_number/voyage_events","http_method":"POST","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eCreates a new voyage event for a specific voyage.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"voyage_number","full_name":"voyage_number","description":"\n\u003cp\u003eThe voyage number to create the event for\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"voyage_event_type_id","full_name":"voyage_event_type_id","description":"\n\u003cp\u003eThe voyage event type ID\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"voyage_event","full_name":"voyage_event","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"started_at","full_name":"voyage_event[started_at]","description":"\n\u003cp\u003eStart time in ISO 8601 format\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"completed_at","full_name":"voyage_event[completed_at]","description":"\n\u003cp\u003eCompletion time in ISO 8601 format\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"service_boat_id","full_name":"voyage_event[service_boat_id]","description":"\n\u003cp\u003eService boat ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"pilot_id","full_name":"voyage_event[pilot_id]","description":"\n\u003cp\u003ePilot ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"from_berth_id","full_name":"voyage_event[from_berth_id]","description":"\n\u003cp\u003eFrom berth area ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"to_berth_id","full_name":"voyage_event[to_berth_id]","description":"\n\u003cp\u003eTo berth area ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"custom_value","full_name":"voyage_event[custom_value]","description":"\n\u003cp\u003eCustom value for the event\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"notes","full_name":"voyage_event[notes]","description":"\n\u003cp\u003eAdditional notes\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"flex_fields","full_name":"voyage_event[flex_fields]","description":"\n\u003cp\u003eAn array of hashes, where each hash contains a flex field’s canonical name and the corresponding value to be set on the voyage event.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of Hash","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/voyages/V001/voyage_events' \\\n  -X 'POST' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN' \\\n  -d '{\n    \"voyage_event_type_id\": 5,\n    \"voyage_event\": {\n      \"started_at\": \"2024-01-15T10:30:00Z\",\n      \"completed_at\": \"2024-01-15T11:00:00Z\",\n      \"service_boat_id\": 2,\n      \"pilot_id\": 3,\n      \"notes\": \"Pilot boarding completed successfully\",\n      \"flex_fields\": [\n        {\"delay_reason\": \"Weather conditions\"},\n        {\"priority_level\": \"High\"}\n      ]\n    }\n  }'\n\n","{\n  \"voyage_event\": {\n    \"id\": 1,\n    \"event_name\": \"Pilot Boarded\",\n    \"event_type_id\": 5,\n    \"created_at\": \"2024-01-15T10:30:00Z\",\n    \"updated_at\": \"2024-01-15T10:30:00Z\",\n    \"started_at\": \"2024-01-15T10:30:00Z\",\n    \"completed_at\": \"2024-01-15T11:00:00Z\",\n    \"custom_value\": null,\n    \"service_boat\": {\n      \"id\": 2,\n      \"name\": \"Pilot Boat Alpha\"\n    },\n    \"pilot\": {\n      \"id\": 3,\n      \"name\": \"John Smith\"\n    },\n    \"user\": {\n      \"id\": 4,\n      \"name\": \"Jane Doe\"\n    },\n    \"notes\": \"Pilot boarding completed successfully\",\n    \"flex_fields\": [\n      {\n        \"label\": \"delay_reason\",\n        \"value\": \"Weather conditions\"\n      },\n      {\n        \"label\": \"priority_level\",\n        \"value\": \"High\"\n      }\n    ]\n  }\n}\n\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/voyages-voyage_events/update","name":"update","apis":[{"api_url":"/api/v1/voyages/:voyage_number/voyage_events/:id","http_method":"PATCH","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eUpdates an existing voyage event.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"voyage_number","full_name":"voyage_number","description":"\n\u003cp\u003eThe voyage number that owns this event\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"\n\u003cp\u003eThe voyage event ID\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"voyage_event","full_name":"voyage_event","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"started_at","full_name":"voyage_event[started_at]","description":"\n\u003cp\u003eStart time in ISO 8601 format\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"completed_at","full_name":"voyage_event[completed_at]","description":"\n\u003cp\u003eCompletion time in ISO 8601 format\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"service_boat_id","full_name":"voyage_event[service_boat_id]","description":"\n\u003cp\u003eService boat ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"pilot_id","full_name":"voyage_event[pilot_id]","description":"\n\u003cp\u003ePilot ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"from_berth_id","full_name":"voyage_event[from_berth_id]","description":"\n\u003cp\u003eFrom berth area ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"to_berth_id","full_name":"voyage_event[to_berth_id]","description":"\n\u003cp\u003eTo berth area ID\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"custom_value","full_name":"voyage_event[custom_value]","description":"\n\u003cp\u003eCustom value for the event\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"notes","full_name":"voyage_event[notes]","description":"\n\u003cp\u003eAdditional notes\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"flex_fields","full_name":"voyage_event[flex_fields]","description":"\n\u003cp\u003eAn array of hashes, where each hash contains a flex field’s canonical name and the corresponding value to be set on the voyage event.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of Hash","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/voyages/V001/voyage_events/1' \\\n  -X 'PATCH' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN' \\\n  -d '{\n    \"voyage_event\": {\n      \"started_at\": \"2024-01-15T10:35:00Z\",\n      \"completed_at\": \"2024-01-15T11:05:00Z\",\n      \"notes\": \"Updated pilot boarding information\",\n      \"flex_fields\": [\n        {\"delay_reason\": \"Updated weather conditions\"},\n        {\"priority_level\": \"Medium\"}\n      ]\n    }\n  }'\n\n","{\n  \"voyage_event\": {\n    \"id\": 1,\n    \"event_name\": \"Pilot Boarded\",\n    \"event_type_id\": 5,\n    \"created_at\": \"2024-01-15T10:30:00Z\",\n    \"updated_at\": \"2024-01-15T10:36:00Z\",\n    \"started_at\": \"2024-01-15T10:35:00Z\",\n    \"completed_at\": \"2024-01-15T11:05:00Z\",\n    \"custom_value\": null,\n    \"service_boat\": {\n      \"id\": 2,\n      \"name\": \"Pilot Boat Alpha\"\n    },\n    \"pilot\": {\n      \"id\": 3,\n      \"name\": \"John Smith\"\n    },\n    \"user\": {\n      \"id\": 4,\n      \"name\": \"Jane Doe\"\n    },\n    \"notes\": \"Updated pilot boarding information\",\n    \"flex_fields\": [\n      {\n        \"label\": \"delay_reason\",\n        \"value\": \"Updated weather conditions\"\n      },\n      {\n        \"label\": \"priority_level\",\n        \"value\": \"Medium\"\n      }\n    ]\n  }\n}\n\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/voyages-voyage_events/destroy","name":"destroy","apis":[{"api_url":"/api/v1/voyages/:voyage_number/voyage_events/:id","http_method":"DELETE","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eDeletes a specific voyage event.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"voyage_number","full_name":"voyage_number","description":"\n\u003cp\u003eThe voyage number that owns this event\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"id","full_name":"id","description":"\n\u003cp\u003eThe voyage event ID\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl 'https://app.octopi.co/api/v1/voyages/V001/voyage_events/1' \\\n  -X 'DELETE' \\\n  -H 'Accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -H 'Authorization: Token token=YOURTOKEN'\n\n","{\n  \"message\": \"Voyage event deleted successfully\"\n}\n\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"work_queues-work_queue_items":{"doc_url":"/api/v1/documentation/1.0/work_queues-work_queue_items","id":"work_queues-work_queue_items","api_url":"/api/v1","name":"Work_queues::Work_queue_items","short_description":"This resource allows you to create a work queue item for a work queue","full_description":"\n\u003cp\u003eOctopi has many work queues per organization. You can create work queue items for a work queue using this API method.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/work_queues-work_queue_items/create","name":"create","apis":[{"api_url":"/api/v1/work_queues/:work_queue_id/work_queue_items.json","http_method":"POST","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"","errors":[{"code":404,"description":"Not found","metadata":null},{"code":500,"description":"Server crashed for some reason","metadata":null}],"params":[{"name":"work_queue_id","full_name":"work_queue_id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_number","full_name":"container_number","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"destination_type","full_name":"destination_type","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"destination_id","full_name":"destination_id","description":"","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl -v -X POST \\\n  -H \"Accept: application/json\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Token token=YOURTOKEN\" \\\n  \"https://app.octopi.co/api/v1/work_queues/WORK_QUEUE_ID/work_queue_items.json\" \\\n  -d '{ \"work_queue_item\": {\"container_number\": \"ABCD123\", \"destination_type\": \"YardArea\", \"destination_id\": 450 }}'\n","{\n  \"work_queue_item\": {\n    \"id\": 2379116,\n    \"claimed_by_id\": null,\n    \"claimed_at\": null,\n    \"work_queue_id\": 123,\n    \"completed_by_id\": null,\n    \"completed_at\": null,\n    \"container_id\": 2260766,\n    \"source_id\": 94,\n    \"source_type\": \"Terminal\",\n    \"destination_id\": 450,\n    \"destination_type\": \"YardArea\",\n    \"created_at\": \"2022-01-24T05:12:06.399-05:00\",\n    \"updated_at\": \"2022-01-24T05:12:06.399-05:00\",\n    \"truck_visit_id\": null,\n    \"destination_yard_slot_id\": null,\n    \"voyage_id\": null,\n    \"tallied_cargo_id\": null,\n    \"yard_slot_custom_name\": null,\n    \"interchange_id\": null,\n    \"work_queue_lift_type_id\": null,\n    \"stripped_tallied_cargo_id\": null,\n    \"destination_second_yard_slot_id\": null,\n    \"second_yard_slot_custom_name\": null,\n    \"equipment_id\": null,\n    \"remarks\": null,\n    \"container_status\": \"full\",\n    \"claimed_by_name\": null,\n    \"container_number\": \"ABCD123\",\n    \"container_type\": \"40CT\",\n    \"container_length\": 40,\n    \"container_shipping_line\": \"MAERSK\",\n    \"container_notes\": null,\n    \"container_display_name\": \"ABCD123\",\n    \"container_has_unlifted_holds\": false,\n    \"container_delivery_type\": null,\n    \"container_consignees\": \"Consignee: ARUBA\",\n    \"container_bol_container_count\": null,\n    \"source_yard_slot_name\": \"\",\n    \"source_name\": \"South Terminal\",\n    \"destination_name\": \"Warehouse Yard Area\",\n    \"truck_visit\": \"\",\n    \"voyage\": \"\",\n    \"tallied_cargo\": \"\",\n    \"container_usage\": \"export\",\n    \"container_POD\": null,\n    \"has_unfinished_interchange\": false,\n    \"require_interchange_to_claim_work_queues\": true,\n    \"suggested_destination\": \"\",\n    \"suggested_destination_yard_slot_id\": \"\",\n    \"suggested_destination_yard_slot_name\": \"\",\n    \"comment\": \"\"\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"manifests-bill_of_ladings-cargoes":{"doc_url":"/api/v1/documentation/1.0/manifests-bill_of_ladings-cargoes","id":"manifests-bill_of_ladings-cargoes","api_url":"/api/v1","name":"Manifests::Bill_of_ladings::Cargoes","short_description":"This resources allows you to create cargoes associated with a bill of lading in Octopi.","full_description":"","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/manifests-bill_of_ladings-cargoes/container","name":"container","apis":[{"api_url":"/api/v1/manifests/:manifest_client_identifier/bill_of_ladings/:number/cargoes.json","http_method":"POST","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis API endpoint allows you to create cargoes associated with a bill of landing.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Resource Not Found.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"manifest_client_identifier","full_name":"manifest_client_identifier","description":"\n\u003cp\u003eThe same client_identifier provided on manifest creation.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"number","full_name":"number","description":"\n\u003cp\u003eThe bill of lading number provided on bill of lading creation.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_type","full_name":"container_type","description":"\n\u003cp\u003eContainer type is required if cargo type is a container.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"hazmat_codes","full_name":"hazmat_codes","description":"\n\u003cp\u003eMultiple hazmat codes should be encoded using a comma separated values strategy.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_line","full_name":"shipping_line","description":"\n\u003cp\u003eContainer shipping line is required. Send the shipping line code and Octopi will try to find the shipping line. If a shipping line is not found an error will be returned.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"delivery_type","full_name":"delivery_type","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003egate\u003c/code\u003e, \u003ccode\u003eunstuff\u003c/code\u003e, \u003ccode\u003etransshipment\u003c/code\u003e, \u003ccode\u003ecruise\u003c/code\u003e, \u003ccode\u003eempty\u003c/code\u003e, \u003ccode\u003epartial_unstuff\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"tags","full_name":"tags","description":"\n\u003cp\u003eList of tags associated with this cargo.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be an array of any type","expected_type":"array","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"cargo","full_name":"cargo","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Hash","expected_type":"hash","metadata":null,"show":true,"validations":[],"deprecated":false,"params":[{"name":"cargo_type","full_name":"cargo[cargo_type]","description":"\n\u003cp\u003eThe Octopi team is working to add more options.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003ebreakbulk\u003c/code\u003e, \u003ccode\u003econtainer\u003c/code\u003e, \u003ccode\u003evehicle\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_status","full_name":"cargo[container_status]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003efull\u003c/code\u003e, \u003ccode\u003eempty\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_number","full_name":"cargo[container_number]","description":"\n\u003cp\u003eContainer number is required if cargo type is a container.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"container_seals","full_name":"cargo[container_seals]","description":"\n\u003cp\u003eMultiple seals should be encoded using a comma separated values strategy.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"weight","full_name":"cargo[weight]","description":"\n\u003cp\u003eWeight is in kg\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"description","full_name":"cargo[description]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"volume","full_name":"cargo[volume]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"quantity","full_name":"cargo[quantity]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Integer","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"temperature","full_name":"cargo[temperature]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a Float","expected_type":"numeric","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"temperature_unit","full_name":"cargo[temperature_unit]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003efahrenheit\u003c/code\u003e, \u003ccode\u003ecelsius\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"sold_status","full_name":"cargo[sold_status]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003enot_for_sale\u003c/code\u003e, \u003ccode\u003efor_sale\u003c/code\u003e, \u003ccode\u003esold\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"usage","full_name":"cargo[usage]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003egate\u003c/code\u003e, \u003ccode\u003eunstuff\u003c/code\u003e, \u003ccode\u003etransshipment\u003c/code\u003e, \u003ccode\u003ecruise\u003c/code\u003e, \u003ccode\u003eempty\u003c/code\u003e, \u003ccode\u003epartial_stuff\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shippers_owned","full_name":"cargo[shippers_owned]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be one of: \u003ccode\u003etrue\u003c/code\u003e, \u003ccode\u003efalse\u003c/code\u003e.","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"client_identifier","full_name":"cargo[client_identifier]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"vin","full_name":"cargo[vin]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"make","full_name":"cargo[make]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"shipping_marks","full_name":"cargo[shipping_marks]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"reference_number","full_name":"cargo[reference_number]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"model","full_name":"cargo[model]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"year","full_name":"cargo[year]","description":"\n\u003cp\u003eContainer year must be a 4 digits number.\u003c/p\u003e\n","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"color","full_name":"cargo[color]","description":"","required":false,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}]}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/manifests/:manifest_client_identifier/bill_of_ladings/:number/cargoes.json\" -d '{ \"container_type\": \"20DV\", \"shipping_line\": \"KOSU\", \"delivery_type\": \"gate\", \"tags\": [\"heavy\", \"xyz\"], \"hazmat_codes\": \"0007,0038\", \"cargo\": { \"cargo_type\": \"container\", \"container_number\": \"container_number\", \"container_status\": \"full\", \"weight\": 10000.10, \"description\": \"It is a container.\", \"container_seals\": \"sello1,sello2\", \"sold_status\": \"not_for_sale\", \"usage\": \"transshipment\", \"client_identifier\": \"THE_CLIENT_IDENTIFIER\", \"vin\": \"1N4AL3AP6FN884262\", \"make\": \"NISSAN\", \"model\":\"Altima\", \"year\": \"2014\", \"color\":\"RED\" } }' -X POST -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"manifests-bill_of_ladings-flex_fields":{"doc_url":"/api/v1/documentation/1.0/manifests-bill_of_ladings-flex_fields","id":"manifests-bill_of_ladings-flex_fields","api_url":"/api/v1","name":"Manifests::Bill_of_ladings::Flex_fields","short_description":"Customizable fields for Bill of Ladings","full_description":"\n\u003cp\u003eCustomizable fields for Bill of Ladings\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/manifests-bill_of_ladings-flex_fields/update","name":"update","apis":[{"api_url":"/api/v1/manifests/:manifest_client_identifier/bill_of_ladings/:bill_of_lading_number/flex_fields/:label","http_method":"PUT","short_description":"Updates the flex field","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis endpoint allows you to update flex fields for bill of ladings on Octopi.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"manifest_client_identifier","full_name":"manifest_client_identifier","description":"\n\u003cp\u003eClient identifier for the manifest\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"bill_of_lading_number","full_name":"bill_of_lading_number","description":"\n\u003cp\u003eNumber of the Bill of Ladings\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"label","full_name":"label","description":"\n\u003cp\u003eLabel of the flex field\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"value","full_name":"value","description":"\n\u003cp\u003eValue of the flex field to change\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/manifests/CLIENT_IDENTIFIER/bill_of_ladings/NUMBER/flex_fields/LABEL\" \\\n     -X PUT \\\n     \"Authorization: Token token=ADD TOKEN HERE\" \\\n     -d '{ \"value\": \"FLEX_FIELD_VALUE\" }'\n","\"value\": \"FLEX_FIELD_VALUE\" "],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"manifests-bill_of_ladings-holds":{"doc_url":"/api/v1/documentation/1.0/manifests-bill_of_ladings-holds","id":"manifests-bill_of_ladings-holds","api_url":"/api/v1","name":"Manifests::Bill_of_ladings::Holds","short_description":"This resource allows you to view the holds on bill of ladings.","full_description":"\n\u003cp\u003eThis resource allows you to view holds that are associated to a specific bill of lading.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/manifests-bill_of_ladings-holds/index","name":"index","apis":[{"api_url":"/api/v1/manifests/:manifest_client_identifier/bill_of_ladings/:bill_of_lading_number/holds.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis endpoint returns a list of all the holds that have been placed on the cargo for a bill of lading.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found","metadata":null},{"code":500,"description":"Server crashed for some reason","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/manifests/MANIFEST_CLIENT_IDENTIFIER/bill_of_ladings/BILL_OF_LADING_NUMBER/holds.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n","  {\n    \"bill_of_lading\": {\n      \"number\": \"TSCW12924362\",\n      \"unlifted_holds\":[\n      {\n        \"id\":36,\n        \"name\":\"FAS\",\n        \"description\":\"The port handles cargo under two types of shipping terms- FAS and LINER. Liner cargo would be transshipment and vehicle carriers.  This fee would be paid for the agent and as such would not require a FAS hold.  All other cargo is FAS and these fees must be paid before the cargo can be delivered.  \",\n        \"actions\":{\n          \"lift\":{\n            \"method\":\"DELETE\",\n            \"url\":\"http://app.octopi.co/api/v1/manifests/2018010126/bill_of_ladings/TSCW12924362/holds/36.json\"\n          }\n        }\n      }\n    ],\n    \"applicable_holds\":[\n      {\n        \"id\":34,\n        \"name\":\"Agent Hold\",\n        \"description\":\"\",\n        \"actions\":{\n          \"apply\":{\n            \"method\":\"PUT\",\n            \"url\":\"http://app.octopi.co/api/v1/manifests/2018010126/bill_of_ladings/TSCW12924362/holds/34.json\"\n          }\n        }\n      },\n      {\n        \"id\":54,\n        \"name\":\"Transshipment Hold\",\n        \"description\":\"Calendar Days\",\n        \"actions\":{\n          \"apply\":{\n            \"method\":\"PUT\",\n            \"url\":\"http://app.octopi.co/api/v1/manifests/2018010126/bill_of_ladings/TSCW12924362/holds/54.json\"\n          }\n        }\n      }\n    ]\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/manifests-bill_of_ladings-holds/destroy","name":"destroy","apis":[{"api_url":"/api/v1/manifests/:manifest_client_identifier/bill_of_ladings/:bill_of_lading_number/holds/:hold_id.json","http_method":"DELETE","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis endpoint can be used to lift specified holds from a bill of lading.“\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found","metadata":null},{"code":500,"description":"Server crashed for some reason","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/manifests/:manifest_client_identifier/bill_of_ladings/:bill_of_lading_number/holds/:hold_id.json\" -X DELETE -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\" -d '{\"hold\": { \"reference_number\": \"Your Reference Number\", \"lift_until\": \"2019-10-10\" } }'\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/manifests-bill_of_ladings-holds/update","name":"update","apis":[{"api_url":"/api/v1/manifests/:manifest_client_identifier/bill_of_ladings/:bill_of_lading_number/holds/:hold_id.json","http_method":"PUT","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis endpoint can be used to apply holds to a bill of lading.“\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found","metadata":null},{"code":500,"description":"Server crashed for some reason","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/manifests/:manifest_client_identifier/bill_of_ladings/:bill_of_lading_number/holds/:hold_id.json\" -X PUT -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"shipping_lines-bookings-flex_fields":{"doc_url":"/api/v1/documentation/1.0/shipping_lines-bookings-flex_fields","id":"shipping_lines-bookings-flex_fields","api_url":"/api/v1","name":"Shipping_lines::Bookings::Flex_fields","short_description":"This resource allows you modify flex fields for bookings in Octopi.","full_description":"\n\u003cp\u003eThis resource allows you to access flex fields for bookings in Octopi\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/shipping_lines-bookings-flex_fields/update","name":"update","apis":[{"api_url":"/api/v1/shipping_lines/CODE/bookings/NUMBER/flex_fields/:label","http_method":"PUT","short_description":"Updates a Container","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis resource allows you to access flex fields for bookings in Octopi.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"label","full_name":"label","description":"\n\u003cp\u003eLabel of the flex field\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"value","full_name":"value","description":"\n\u003cp\u003eValue of the flex field to change\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/shipping_lines/CODE/bookings/NUMBER/flex_fields/flex_field_label\" \\\n     -X PUT \\\n     \"Authorization: Token token=ADD TOKEN HERE\" \\\n     -d '{ \"value\": \"FLEX_FIELD_VALUE\" }'\n","\"value\": \"FLEX_FIELD_VALUE\" "],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"voyages-bill_of_ladings-hold_types":{"doc_url":"/api/v1/documentation/1.0/voyages-bill_of_ladings-hold_types","id":"voyages-bill_of_ladings-hold_types","api_url":"/api/v1","name":"Voyages::Bill_of_ladings::Hold_types","short_description":"This resource allows you to edit the holds on a bill of lading.","full_description":"\n\u003cp\u003eThis resource allows you to lift and apply holds based on a hold type for all the cargo on a bill of lading.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/voyages-bill_of_ladings-hold_types/lift","name":"lift","apis":[{"api_url":"/api/v1/voyages/:voyage_number/bill_of_ladings/:bill_of_lading_number/hold_types/:hold_type_id/lift.json","http_method":"PUT","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis endpoint can be used to lift all holds from a bill of lading.“\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found","metadata":null},{"code":500,"description":"Server crashed for some reason","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/voyages/:voyage_number/bill_of_ladings/:bill_of_lading_number/hold_types/:hold_type_id/lift.json\" -X PUT -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\" -d '{\"hold\": { \"reference_number\": \"Your Reference Number\", \"notes\": \"Your notes\" } }'\n"],"metadata":null,"see":[],"headers":[],"show":true},{"doc_url":"/api/v1/documentation/1.0/voyages-bill_of_ladings-hold_types/apply","name":"apply","apis":[{"api_url":"/api/v1/voyages/:voyage_number/bill_of_ladings/:bill_of_lading_number/hold_type/:hold_type_id/apply.json","http_method":"PUT","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis endpoint can be used to lift all holds from a bill of lading.“\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found","metadata":null},{"code":500,"description":"Server crashed for some reason","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/voyages/:voyage_number/bill_of_ladings/:bill_of_lading_number/hold_type/:hold_type_id/apply.json\" -X PUT -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\" -d '{\"hold\": { \"reference_number\": \"Your Reference Number\" } }'\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"voyages-bill_of_ladings-holds":{"doc_url":"/api/v1/documentation/1.0/voyages-bill_of_ladings-holds","id":"voyages-bill_of_ladings-holds","api_url":"/api/v1","name":"Voyages::Bill_of_ladings::Holds","short_description":"This resource allows you to view and edit the holds on cargo.","full_description":"\n\u003cp\u003eThis resource allows you to view, lift and apply holds to all the cargo for a specific bill of lading.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/voyages-bill_of_ladings-holds/index","name":"index","apis":[{"api_url":"/api/v1/voyages/:voyage_number/bill_of_ladings/:bill_of_lading_number/holds.json","http_method":"GET","short_description":null,"deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis endpoint returns a list of all the holds that have been placed on the cargo for a bill of lading.\u003c/p\u003e\n","errors":[{"code":404,"description":"Not found","metadata":null},{"code":500,"description":"Server crashed for some reason","metadata":null}],"params":[],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/voyages/VOYAGE_NUMBER/bill_of_ladings/BILL_OF_LADING_NUMBER/holds.json\" -H \"Accept: application/json\" -H \"Content-Type: application/json\" -H \"Authorization: Token token=YOURTOKEN\"\n","  {\"bill_of_lading\":\n    \"number\": \"TSCW12924362\",\n    \"unlifted_hold_types\":[\n      {\n        \"id\":36,\"name\":\"FAS\",\n        \"description\":\"The port handles cargo under two types of shipping terms- FAS and LINER. Liner cargo would be transshipment and vehicle carriers.  This fee would be paid for the agent and as such would not require a FAS hold.  All other cargo is FAS and these fees must be paid before the cargo can be delivered.  \",\n        \"actions\":{\n          \"lift\":{\n            \"method\":\"PUT\",\n            \"url\":\"http://app.octopi.co/api/v1/voyages/2018010126/bill_of_ladings/TSCW12924362/hold_types/36/lift.json\"\n          }\n        }\n      }\n    ],\n    \"hold_types\":[\n      {\n        \"id\":34,\n        \"name\":\"Agent Hold\",\n        \"description\":\"\",\n        \"actions\":{\n          \"apply\":{\n            \"method\":\"PUT\",\n            \"url\":\"http://app.octopi.co/api/v1/voyages/2018010126/bill_of_ladings/TSCW12924362/hold_types/34/apply.json\"\n          }\n        }\n      },\n      {\n        \"id\":54,\n        \"name\":\"Transshipment Hold\",\n        \"description\":\"Calendar Days\",\n        \"actions\":{\n          \"apply\":{\n            \"method\":\"PUT\",\n            \"url\":\"http://app.octopi.co/api/v1/voyages/2018010126/bill_of_ladings/TSCW12924362/hold_types/54/apply.json\"\n          }\n        }\n      }\n    ],\n    \"holds\":[\n      {\n        \"id\":449765,\n        \"hold_type_id\":36,\n        \"hold_type\":\"FAS\",\n        \"applied_at\":\"2018-01-29T15:02:46Z\",\n        \"applied_by\":null,\n        \"lifted\":false,\n        \"lifted_by\":null,\n        \"lifted_at\":null,\n        \"reference_number\":null\n      }\n    ]\n  }\n}\n"],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false},"voyages-bill_of_ladings-packing_list_items":{"doc_url":"/api/v1/documentation/1.0/voyages-bill_of_ladings-packing_list_items","id":"voyages-bill_of_ladings-packing_list_items","api_url":"/api/v1","name":"Voyages::Bill_of_ladings::Packing_list_items","short_description":null,"full_description":"","version":"1.0","formats":null,"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/voyages-bill_of_ladings-packing_list_items/destroy","name":"destroy","apis":[{"api_url":"/api/v1/voyages/:voyage_number/bill_of_ladings/:bill_of_lading_number/packing_list_items.json","http_method":"DELETE","short_description":null,"deprecated":null}],"formats":null,"full_description":"","errors":[],"params":[],"returns":[],"examples":[],"metadata":null,"see":[],"headers":[],"show":true}],"headers":null,"deprecated":null},"shipping_lines-bookings-line_items-flex_fields":{"doc_url":"/api/v1/documentation/1.0/shipping_lines-bookings-line_items-flex_fields","id":"shipping_lines-bookings-line_items-flex_fields","api_url":"/api/v1","name":"Shipping_lines::Bookings::Line_items::Flex_fields","short_description":"Allows you to modify flex fields for booking line items in Octopi.","full_description":"\n\u003cp\u003eAllows you to modify flex fields for booking line items in Octopi.\u003c/p\u003e\n","version":"1.0","formats":["json"],"metadata":null,"methods":[{"doc_url":"/api/v1/documentation/1.0/shipping_lines-bookings-line_items-flex_fields/update","name":"update","apis":[{"api_url":"/api/v1/shipping_lines/:code/bookings/:number/line_items/:line_item_number/flex_fields/:label","http_method":"PUT","short_description":"Updates the flex fields for the line item","deprecated":null}],"formats":["json"],"full_description":"\n\u003cp\u003eThis resource allows you to access flex fields for booking line items in Octopi.\u003c/p\u003e\n","errors":[{"code":400,"description":"Bad Request.","metadata":null},{"code":404,"description":"Not Found.","metadata":null},{"code":422,"description":"Unprocessable Entity.","metadata":null},{"code":500,"description":"Internal Server Error.","metadata":null}],"params":[{"name":"code","full_name":"code","description":"\n\u003cp\u003eShipping Line Code\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"line_item_number","full_name":"line_item_number","description":"\n\u003cp\u003eLine Item Number\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"number","full_name":"number","description":"\n\u003cp\u003eBooking Number\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"label","full_name":"label","description":"\n\u003cp\u003eFlex field label (case-sensitive).\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false},{"name":"value","full_name":"value","description":"\n\u003cp\u003eFlex field value. Passing a null value will remove the flex field.\u003c/p\u003e\n","required":true,"allow_nil":false,"allow_blank":false,"validator":"Must be a String","expected_type":"string","metadata":null,"show":true,"validations":[],"deprecated":false}],"returns":[],"examples":["curl \"https://app.octopi.co/api/v1/shipping_lines/SHIPPING_LINE_CODE/bookings/BOOKING_ID/line_items/LINE_ITEM_ID/flex_fields/LABEL\" \\\n     -X PUT \\\n     \"Authorization: Token token=ADD TOKEN HERE\" \\\n     -d '{ \"value\": \"FLEX_FIELD_VALUE\" }'\n","\"value\": \"FLEX_FIELD_VALUE\" "],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false}}}}