My client told me about that they are having issues with specific transports because we can’t choose the type of transport (we use Stuart in Barcelona).
For instance: If a delivery guy has to go from point A to point B and to go there you must get the highway (no bikes allowed), because we can’t choose the transport type, Stuart will send (I don’t know if at random) sometimes a bike. When the bike gets to the point that it can’t go further because it’s a highway, then Stuart has to call a motorbike or a car to pick up the package and get it to point B, making the delivery more expensive and tardier.
Another example would be when Stuart sends a car and the destination is at a “pedestrians only” area (same as previous example but inverse). My client talked with Stuart’s customer service and they told them that this can be controlled with, casually, some “access codes”, but that have nothing to do with what you mentioned above.
I don’t know if what I said mentioned above is understandable, but is there any way to control this kind of situations through Stuart’s API?
Indeed specifying transport types is not related to access_codes.
We recommend specifying package type for jobs in Barcelona because this allows for a larger pool of drivers available across different transport types. However in the cases you give I can see why you might need to specify transport type instead of package type (note you cannot specify both package type and transport type).
Although it is generally not the usual practice in Barcelona it can be possible to specify transport type when creating job. This is something you will need to speak to your account manager about as it is to be determined case by case. I will get back to you in PM about this possibility in your case.
P.S. I will split this Q&A topic into two, one for access codes and another for transport type to make the information more readable for others.
Our package types are always xs (small bag with food), so it makes no sense to specify another type of package. By selecting a transport type, is there a call in Stuart that checks whether a vehicle can do the job other than the case JOB_DISTANCE_NOT_ALLOWED in the validate call?
If your package is always XS then every vehicle available to you should be able to do the job in terms of package size restrictions.
You can use the validate job parameters endpoint to ensure that all the job parameters you are passing are valid for the job creation. Unfortunately this validation does not check for valid transport types based on whether the job enters vehicle restricted zones. This is something to be dealt with on your end by specifying the ‘job.transport_type’ rather than the ‘job.dropoffs[0].package_type’.