ONE Line Prices avatar
ONE Line Prices

Pricing

$8.00/month + usage

Go to Store
ONE Line Prices

ONE Line Prices

Developed by

Maged Safwat

Maintained by Community

Scrapes shipping prices from ONE Line's e-commerce platform for specified origin, destination, containers, and commodity. Supports authentication via access/refresh tokens or username/password.

0.0 (0)

Pricing

$8.00/month + usage

0

Monthly users

2

Runs succeeded

>99%

Last modified

3 days ago

ONE Line Shipping Price Scraper

Description

The ONE Line Shipping Price Scraper is an Apify Actor that scrapes shipping price data from the ONE Line e-commerce platform (https://ecomm.one-line.com). It retrieves pricing details for specified origin and destination locations, container types, and commodity codes or names. The Actor supports two authentication methods:

  • Token-Based Authentication (Priority): Provide access_token and refresh_token directly for API access.
  • Username/Password Authentication (Fallback): Use a username and password to log in via Selenium if tokens are unavailable or invalid.

The Actor stores authentication tokens in Apify's key-value store for reuse, refreshes tokens when expired, and handles errors gracefully. It outputs structured data including departure/arrival dates, total price, and detailed freight information (e.g., service codes, charges).

Features

  • Supports authentication via tokens or username/password.
  • Validates and resolves location and commodity codes.
  • Handles multiple container types (DRY 20, DRY 40, DRY 40H) with quantity and weight.
  • Provides detailed freight information, including origin/destination charges and transit details.
  • Displays data in a table view in the Apify UI.

Prerequisites

To use this Actor, you need:

  • An Apify account (sign up at https://console.apify.com).
  • Valid ONE Line credentials:
    • Access and refresh tokens (preferred), or
    • Username and password for login.
  • Basic familiarity with the Apify platform for configuring and running Actors.

Input Schema

The Actor expects input with the following fields:

Field NameTypeDescription
access_tokenstringAccess token for ONE Line API authentication (requires refresh_token).
refresh_tokenstringRefresh token for ONE Line API authentication (requires access_token).
usernamestringUsername for ONE Line login (requires password, used if tokens are missing).
passwordstringPassword for ONE Line login (requires username, used if tokens are missing).
originstringOrigin location name or code (e.g., 'dam' or 'EGDAM').
destinationstringDestination location name or code (e.g., 'VNCMP' or 'Cai Mep').
containersarrayList of container objects with name, quantity, and weight.
commoditystringCommodity code (e.g., '091091') or name.

Notes:

  • Either access_token and refresh_token or username and password must be provided.
  • containers items are objects with name (string, e.g., "DRY 40"), quantity (integer), and weight (integer).

Example Input

Token-Based Authentication

1{
2  "access_token": "your_access_token",
3  "refresh_token": "your_refresh_token",
4  "origin": "dam",
5  "destination": "VNCMP",
6  "containers": [
7    {"name": "DRY 40", "quantity": 5, "weight": 9000},
8    {"name": "DRY 20", "quantity": 1, "weight": 10000}
9  ],
10  "commodity": "091091"
11}

Username/Password Authentication

1{
2  "username": "your_username",
3  "password": "your_password",
4  "origin": "dam",
5  "destination": "VNCMP",
6  "containers": [
7    {"name": "DRY 40", "quantity": 5, "weight": 9000},
8    {"name": "DRY 20", "quantity": 1, "weight": 10000}
9  ],
10  "commodity": "091091"
11}

Output Schema

The Actor outputs an array of shipping price records. Key fields are listed below, with nested freightInfos fields included for display in the Apify UI table view:

Field NameTypeDescription
departureDateEstimatedstringEstimated departure date (YYYY-MM-DD).
arrivalDateEstimatedstringEstimated arrival date (YYYY-MM-DD).
totalPricenumberTotal price in USD.
freightInfos.serviceCodestringService code (e.g., "MD1").
freightInfos.serviceNamestringService name (e.g., "MEDITERRANEAN 1").
freightInfos.transportNamestringName of the transport (e.g., "YM WINNER").
freightInfos.pricenumberPrice for this freight service.
freightInfos.durationintegerDuration in days.
freightInfos.statusstringStatus of the service (e.g., "Available").
freightInfos.numberOfTransitsintegerNumber of transits.
freightInfos.originChargesarrayCharges at origin (array of charge objects).
freightInfos.destinationChargesarrayCharges at destination (array of charge objects).
freightInfos.basicOceanFreightChargesarrayBasic ocean freight charges (array of charge objects).

Notes:

  • freightInfos is an array of objects; the table view displays fields from the first item.
  • Charge fields (originCharges, etc.) are arrays of objects with details like chargeCode, chargeAmount, and totalAmountInUSD.

Example Output

1[
2  {
3  "departureDateEstimated": "2025-04-27",
4  "arrivalDateEstimated": "2025-06-06",
5  "totalPrice": 3644.32,
6  "freightInfos": [
7    {
8      "serviceCode": "MD1",
9      "serviceName": "MEDITERRANEAN 1",
10      "transportName": "YM WINDOW",
11      "conveyanceNumber": "043E",
12      "duration": 40,
13      "price": 3644.32,
14      "status": "Available",
15      "vgmCutoff": "2025-04-24 13:00",
16      "docCutoff": "2025-04-23 13:00",
17      "cyCutoff": "2025-04-25 17:00",
18      "portCutoff": "2025-04-25 17:00",
19      "routeType": "TRANSIT",
20      "numberOfTransits": 1,
21      "pudoVas": false,
22      "originCharges": [
23        {
24          "chargeCode": "CSS",
25          "chargeName": "CARRIER SECURITY SURCHARGE",
26          "chargeAmount": "6",
27          "chargeCurrency": "USD",
28          "exchangeRatio": "1.0",
29          "surchargeCondition": "fixed",
30          "totalAmount": 6,
31          "cargoWeight": "10000",
32          "unit": "KGS",
33          "totalAmountInUSD": 6
34        },
35        {
36          "chargeCode": "EMS",
37          "chargeName": "EMERGENCY SURCHARGE",
38          "chargeAmount": "250",
39          "chargeCurrency": "USD",
40          "exchangeRatio": "1.0",
41          "surchargeCondition": "fixed",
42          "totalAmount": 250,
43          "cargoWeight": "10000",
44          "unit": "KGS",
45          "totalAmountInUSD": 250
46        },
47        {
48          "chargeCode": "CSS",
49          "chargeName": "CARRIER SECURITY SURCHARGE",
50          "chargeAmount": "6",
51          "chargeCurrency": "USD",
52          "exchangeRatio": "1.0",
53          "surchargeCondition": "fixed",
54          "totalAmount": 6,
55          "cargoWeight": "9000",
56          "unit": "KGS",
57          "totalAmountInUSD": 6
58        },
59        {
60          "chargeCode": "EMS",
61          "chargeName": "EMERGENCY SURCHARGE",
62          "chargeAmount": "250",
63          "chargeCurrency": "USD",
64          "exchangeRatio": "1.0",
65          "surchargeCondition": "fixed",
66          "totalAmount": 250,
67          "cargoWeight": "9000",
68          "unit": "KGS",
69          "totalAmountInUSD": 250
70        },
71        {
72          "chargeCode": "CSS",
73          "chargeName": "CARRIER SECURITY SURCHARGE",
74          "chargeAmount": "6",
75          "chargeCurrency": "USD",
76          "exchangeRatio": "1.0",
77          "surchargeCondition": "fixed",
78          "totalAmount": 6,
79          "cargoWeight": "11000",
80          "unit": "KGS",
81          "totalAmountInUSD": 6
82        },
83        {
84          "chargeCode": "EMS",
85          "chargeName": "EMERGENCY SURCHARGE",
86          "chargeAmount": "250",
87          "chargeCurrency": "USD",
88          "exchangeRatio": "1.0",
89          "surchargeCondition": "fixed",
90          "totalAmount": 250,
91          "cargoWeight": "11000",
92          "unit": "KGS",
93          "totalAmountInUSD": 250
94        }
95      ],
96      "destinationCharges": [
97        {
98          "chargeCode": "CMC",
99          "chargeName": "CNTR MAINTENANCE CHARGE",
100          "chargeAmount": "315000",
101          "chargeCurrency": "VND",
102          "exchangeRatio": "0.00003918",
103          "surchargeCondition": "fixed",
104          "totalAmount": 315000,
105          "cargoWeight": "10000",
106          "unit": "KGS",
107          "totalAmountInUSD": 12.34
108        },
109        {
110          "chargeCode": "CCC",
111          "chargeName": "COLLECTION OF CNTR CLEANING FEE",
112          "chargeAmount": "105000",
113          "chargeCurrency": "VND",
114          "exchangeRatio": "0.00003918",
115          "surchargeCondition": "fixed",
116          "totalAmount": 105000,
117          "cargoWeight": "10000",
118          "unit": "KGS",
119          "totalAmountInUSD": 4.11
120        },
121        {
122          "chargeCode": "THD",
123          "chargeName": "TERMINAL HANDLING CHARGE (D)",
124          "chargeAmount": "2800000",
125          "chargeCurrency": "VND",
126          "exchangeRatio": "0.00003918",
127          "surchargeCondition": "fixed",
128          "totalAmount": 2800000,
129          "cargoWeight": "10000",
130          "unit": "KGS",
131          "totalAmountInUSD": 109.7
132        },
133        {
134          "chargeCode": "VVN",
135          "chargeName": "VIETNAM TAX (GENERAL)",
136          "chargeAmount": "216835.6",
137          "chargeCurrency": "VND",
138          "exchangeRatio": "0.00003918",
139          "surchargeCondition": "subject to",
140          "totalAmount": 216835.6,
141          "cargoWeight": "10000",
142          "unit": "KGS",
143          "totalAmountInUSD": 8.49
144        },
145        {
146          "chargeCode": "CMC",
147          "chargeName": "CNTR MAINTENANCE CHARGE",
148          "chargeAmount": "630000",
149          "chargeCurrency": "VND",
150          "exchangeRatio": "0.00003918",
151          "surchargeCondition": "fixed",
152          "totalAmount": 630000,
153          "cargoWeight": "9000",
154          "unit": "KGS",
155          "totalAmountInUSD": 24.68
156        },
157        {
158          "chargeCode": "CCC",
159          "chargeName": "COLLECTION OF CNTR CLEANING FEE",
160          "chargeAmount": "210000",
161          "chargeCurrency": "VND",
162          "exchangeRatio": "0.00003918",
163          "surchargeCondition": "fixed",
164          "totalAmount": 210000,
165          "cargoWeight": "9000",
166          "unit": "KGS",
167          "totalAmountInUSD": 8.22
168        },
169        {
170          "chargeCode": "THD",
171          "chargeName": "TERMINAL HANDLING CHARGE (D)",
172          "chargeAmount": "4500000",
173          "chargeCurrency": "VND",
174          "exchangeRatio": "0.00003918",
175          "surchargeCondition": "fixed",
176          "totalAmount": 4500000,
177          "cargoWeight": "9000",
178          "unit": "KGS",
179          "totalAmountInUSD": 176.31
180        },
181        {
182          "chargeCode": "VVN",
183          "chargeName": "VIETNAM TAX (GENERAL)",
184          "chargeAmount": "328411.2",
185          "chargeCurrency": "VND",
186          "exchangeRatio": "0.00003918",
187          "surchargeCondition": "subject to",
188          "totalAmount": 328411.2,
189          "cargoWeight": "9000",
190          "unit": "KGS",
191          "totalAmountInUSD": 12.86
192        },
193        {
194          "chargeCode": "CMC",
195          "chargeName": "CNTR MAINTENANCE CHARGE",
196          "chargeAmount": "630000",
197          "chargeCurrency": "VND",
198          "exchangeRatio": "0.00003918",
199          "surchargeCondition": "fixed",
200          "totalAmount": 630000,
201          "cargoWeight": "11000",
202          "unit": "KGS",
203          "totalAmountInUSD": 24.68
204        },
205        {
206          "chargeCode": "CCC",
207          "chargeName": "COLLECTION OF CNTR CLEANING FEE",
208          "chargeAmount": "210000",
209          "chargeCurrency": "VND",
210          "exchangeRatio": "0.00003918",
211          "surchargeCondition": "fixed",
212          "totalAmount": 210000,
213          "cargoWeight": "11000",
214          "unit": "KGS",
215          "totalAmountInUSD": 8.22
216        },
217        {
218          "chargeCode": "THD",
219          "chargeName": "TERMINAL HANDLING CHARGE (D)",
220          "chargeAmount": "4500000",
221          "chargeCurrency": "VND",
222          "exchangeRatio": "0.00003918",
223          "surchargeCondition": "fixed",
224          "totalAmount": 4500000,
225          "cargoWeight": "11000",
226          "unit": "KGS",
227          "totalAmountInUSD": 176.31
228        },
229        {
230          "chargeCode": "VVN",
231          "chargeName": "VIETNAM TAX (GENERAL)",
232          "chargeAmount": "328411.2",
233          "chargeCurrency": "VND",
234          "exchangeRatio": "0.00003918",
235          "surchargeCondition": "subject to",
236          "totalAmount": 328411.2,
237          "cargoWeight": "11000",
238          "unit": "KGS",
239          "totalAmountInUSD": 12.86
240        },
241        {
242          "chargeCode": "DOF",
243          "chargeName": "DOC FEE (DEST)",
244          "chargeAmount": "900000",
245          "chargeCurrency": "VND",
246          "exchangeRatio": "0.00003918",
247          "surchargeCondition": "subject to",
248          "totalAmount": 900000,
249          "cargoWeight": "",
250          "unit": "",
251          "totalAmountInUSD": 35.26
252        }
253      ],
254      "basicOceanFreightCharges": [
255        {
256          "chargeCode": "OFT",
257          "chargeName": "BASIC OCEAN FREIGHT",
258          "chargeAmount": "50",
259          "chargeCurrency": "USD",
260          "exchangeRatio": "1.0",
261          "surchargeCondition": "fixed",
262          "totalAmount": 50,
263          "cargoWeight": "10000",
264          "unit": "KGS",
265          "totalAmountInUSD": 50
266        },
267        {
268          "chargeCode": "OFT",
269          "chargeName": "BASIC OCEAN FREIGHT",
270          "chargeAmount": "50",
271          "chargeCurrency": "USD",
272          "exchangeRatio": "1.0",
273          "surchargeCondition": "fixed",
274          "totalAmount": 50,
275          "cargoWeight": "9000",
276          "unit": "KGS",
277          "totalAmountInUSD": 50
278        },
279        {
280          "chargeCode": "OFT",
281          "chargeName": "BASIC OCEAN FREIGHT",
282          "chargeAmount": "50",
283          "chargeCurrency": "USD",
284          "exchangeRatio": "1.0",
285          "surchargeCondition": "fixed",
286          "totalAmount": 50,
287          "cargoWeight": "11000",
288          "unit": "KGS",
289          "totalAmountInUSD": 50
290        }
291      ],
292      "departures": [
293        {
294          "transportType": "Ocean Vessel",
295          "transportName": "YM WINDOW",
296          "departureDateEstimated": "2025-04-27 18:00",
297          "departureTerminal": "DAMIETTA, EGYPT (DAMIETTA CONTAINER TERMINAL)",
298          "arrivalDateEstimated": "2025-05-30 08:00",
299          "arrivalTerminal": "SINGAPORE (PSA CORPORATION LIMITED)",
300          "departureLoc": "EGDAM",
301          "arrivalLoc": "SGSIN",
302          "transitTimeInHrs": 782
303        },
304        {
305          "transportType": "Ocean Vessel",
306          "transportName": "ONE COMPETENCE",
307          "departureDateEstimated": "2025-06-04 18:00",
308          "departureTerminal": "SINGAPORE (PSA CORPORATION LIMITED)",
309          "arrivalDateEstimated": "2025-06-06 09:30",
310          "arrivalTerminal": "CAI MEP (TCIT (TAN CANG CAIMEP INTL TERMINAL))",
311          "departureLoc": "SGSIN",
312          "arrivalLoc": "VNCMT",
313          "transitTimeInHrs": 40
314        }
315      ],
316      "arrival": {
317        "transportType": "Ocean Vessel",
318        "transportName": "ONE COMPETENCE",
319        "departureDateEstimated": "2025-06-04 18:00",
320        "departureTerminal": "SINGAPORE (PSA CORPORATION LIMITED)",
321        "arrivalDateEstimated": "2025-06-06 09:30",
322        "arrivalTerminal": "CAI MEP (TCIT (TAN CANG CAIMEP INTL TERMINAL))",
323        "departureLoc": "SGSIN",
324        "arrivalLoc": "VNCMT",
325        "transitTimeInHrs": 40
326      },
327      "arrivalPod": {
328        "transportType": "Ocean Vessel",
329        "transportName": "ONE COMPETENCE",
330        "departureDateEstimated": "2025-06-04 18:00",
331        "departureTerminal": "SINGAPORE (PSA CORPORATION LIMITED)",
332        "arrivalDateEstimated": "2025-06-06 09:30",
333        "arrivalTerminal": "CAI MEP (TCIT (TAN CANG CAIMEP INTL TERMINAL))",
334        "departureLoc": "SGSIN",
335        "arrivalLoc": "VNCMT",
336        "transitTimeInHrs": 40
337      }
338    }
339  ]
340}
341]

Usage

  1. Access the Actor:

    • Find the Actor in the Apify Store or deploy it from your Apify account.
  2. Configure Input:

    • In the Apify UI, go to the Actor's input tab.
    • Provide either:
      • access_token and refresh_token, or
      • username and password.
    • Specify origin, destination, containers, and commodity as shown in the example input, using names or codes
  3. Run the Actor:

    • Click "Run" in the Apify UI or use the Apify API to execute the Actor.
    • Monitor logs for authentication status and price fetching progress.
  4. View Results:

    • Check the dataset tab in the Apify UI for the scraped price data.
    • The table view displays key fields (e.g., departureDateEstimated, totalPrice, freightInfos.serviceCode).
    • Download the full dataset in JSON, CSV, or other formats for detailed analysis.

Troubleshooting

  • Authentication Errors:

    • Ensure valid access_token and refresh_token or correct username and password.

Pricing

Pricing model

Rental 

To use this Actor, you have to pay a monthly rental fee to the developer. The rent is subtracted from your prepaid usage every month after the free trial period. You also pay for the Apify platform usage.

Free trial

1 day

Price

$8.00