Large order support in SDK & CLI
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
Línea de trabajo
Start by tracing the SDK and CLI order-submission entry points and the orders API limit described here. Resolve the bulk-order behavior for both interfaces, including opt-in handling, 100-item chunking, order naming, and returned order IDs. Done means large requests can be split into usable orders through the SDK and CLI.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
A couple users have reported one of the more tedious parts of using the SDK and CLI is putting all the requests together when ordering a large number of items.
The orders API allows a maximum of 500 items at once (and works best if it's a 100 or less), but many use cases involving larger AOI's and/or deep time stacks involve more than that. A user has to break it up into a number of different requests and then download all of them.
We could offer the ability to break up an order on behalf of the user. In discussion with @jreiberkyle we decided (if I remember right) that the smoothest path (from a CLI perspective) would be to let a user provide an arbitrary long list of id's, but if it's over the limit then we'd have an interactive prompt informing them that their order is past the limit, and it needs to be broken up into smaller orders, and ask them if they'd like that done automatically. We'd then issue as many orders as needed to fulfill the request, returning a list of order id's. The default would likely be that we just then let the user decide if they want to wait and download each, but we could also explore some sort of new bulk wait and download request.
From the python API perspective we also want to offer some sort of bulk offering, with an 'opt-in' step, but @jreiberkyle was going to think of the best way to do that, perhaps another method that takes a longer list of orders and returns a list of order ids, etc.
In both cases we would have to provide 'names' for each order, but both paths would take an order name as an argument, so we could likely just append the order number.
Talking to the core API team at Planet it sounds like breaking orders up into 100 items or less gets the highest chance of success. Right now I'm thinking we could 'offer' this at any order over 100, but if it's under 500 we'd still let them place the order. But I think either way when we break it up we should do chunks of 100 items, for the highest chance of success.
- Lenguaje dominante
- Python
- Estrellas
- 300
- Forks
- 99
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de planetlabs/planet-client-python
-
better-testing
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
planetlabs/planet-client-python#1110 ·
-
FeaturesClient list_items does not support filteringPosiblemente ocupada @steps-re la tomó hace 98 días. Abiertoproposal
Dificultad 3/5 1-2 días Aptitud para principiantes 65/100
planetlabs/planet-client-python#1221 ·
-
FeaturesClient does not implement Update FeaturePosiblemente ocupada @tbarsballe la tomó hace 126 días. Abiertoproposal
Dificultad 3/5 1-2 días Aptitud para principiantes 57/100
planetlabs/planet-client-python#1214 ·
-
bug
Dificultad 3/5 1-2 días Aptitud para principiantes 48/100
planetlabs/planet-client-python#1197 · 1 comentario · 1 reacción ·
-
Quota APIQuizá libre de nuevo @asonnenschein la tomó hace 426 días y no hay ningún pull request abierto. Abiertoai-claude
planetlabs/planet-client-python#1191 · 1 comentario · 1 asignado ·
Todos los issues de planetlabs/planet-client-python
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
aws-samples/sample-per-model-bedrock#191 ·
Los mantenedores suelen responder en 1 día
-
area: docs enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100
PyTomography/PyTomography#331 ·
Los mantenedores suelen responder en 1 día
-
effort: low prio: low ready
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
digitalfabrik/integreat-cms#4616 ·
Los mantenedores suelen responder en 5 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
FuRongJun-1999/dsh-memory#226 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug difficulty:2 good first issue help wanted
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
MakazhanAlpamys/Soup#1865 ·
Los mantenedores suelen responder en 1 día