enviopack_api 0.1.3 → 0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +28 -6
- data/lib/enviopack_api/client.rb +6 -4
- data/lib/enviopack_api/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 45b8c2b4d577f58362548022353ce9e7ba566fa7
|
4
|
+
data.tar.gz: 438bab775e1c0a06e342d5549ed209f1e1480fd1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bd20b4170b1245c73833536e69253ff82ec3a4bdcc3b25dc1021b12c28d2c8b76e8de2728fd1dfc615c84914ec207654cee46d34c84fdfd3d8e743633f02eca0
|
7
|
+
data.tar.gz: df88afc6ea9ce6b996a1fc1de7617c8d60184f531a90c12bd1b663bb4e19ca1c45126c3c89c96e087cb52d4c982c443f4cebe7c2c6bc16d96b3bf81f6b4519cb
|
data/README.md
CHANGED
@@ -21,7 +21,7 @@ O actualiza (instala) independientemente:
|
|
21
21
|
|
22
22
|
> Todos los metodos devuelven objetos en OpenStruct. Por lo cual, los response que deberias usar son: result.id (result.code, etc.)
|
23
23
|
|
24
|
-
Primero deberias leer documentación oficial y [consideraciones iniciales](https://www.enviopack.com/documentacion/consideraciones-iniciales) de Enviopack.
|
24
|
+
Primero deberias leer documentación oficial y [consideraciones iniciales](https://www.enviopack.com/documentacion/consideraciones-iniciales) de Enviopack.
|
25
25
|
|
26
26
|
### Access & Refresh tokens
|
27
27
|
|
@@ -39,7 +39,7 @@ irb: refresh = EnviopackApi::Auth.new(api_key, api_secret).refresh(refresh_token
|
|
39
39
|
|
40
40
|
Para usar API en general necesitaras pocos metodos y muchos parametros. Los principales y testeados en esta GEMa estan descriptos a continuación.
|
41
41
|
|
42
|
-
Una vez obtenido access_token podeis comenzar a trabajar con API. Simplemente crea una conexión con cliente:
|
42
|
+
Una vez obtenido access_token podeis comenzar a trabajar con API. Simplemente crea una conexión con cliente:
|
43
43
|
|
44
44
|
```ruby
|
45
45
|
client = EnviopackApi::Client.new(auth.token)
|
@@ -85,7 +85,7 @@ client.validate_zipcode(province_id, zipcode)
|
|
85
85
|
# => {"valido":true}
|
86
86
|
```
|
87
87
|
|
88
|
-
Mas info sobre [ISO 3166](https://www.iso.org/obp/ui/#iso:code:3166:AR). Sugerimos tenerlos en agluna tabla de tu base de datos.
|
88
|
+
Mas info sobre [ISO 3166](https://www.iso.org/obp/ui/#iso:code:3166:AR). Sugerimos tenerlos en agluna tabla de tu base de datos.
|
89
89
|
|
90
90
|
### Cotizar un envío
|
91
91
|
|
@@ -98,7 +98,7 @@ quote = client.get_quote(params)
|
|
98
98
|
|
99
99
|
Existen parametros obligatorios y opcionales. Ten cuidado con esto.
|
100
100
|
|
101
|
-
### Crear un POST
|
101
|
+
### Crear un POST
|
102
102
|
|
103
103
|
```ruby
|
104
104
|
client.post("resource")
|
@@ -114,6 +114,28 @@ Atención con lo que mandas. Originalmente, los dos **POST** que vas hacer son a
|
|
114
114
|
end
|
115
115
|
```
|
116
116
|
|
117
|
+
### Eliminar un (o varios) envios
|
118
|
+
|
119
|
+
El envio debe estar en borrador y **no estar procesado**
|
120
|
+
|
121
|
+
```ruby
|
122
|
+
# comma separated list
|
123
|
+
# ids = array_of_ids.join(",")
|
124
|
+
# => 1,2,3....xxx
|
125
|
+
client.delete(ids)
|
126
|
+
```
|
127
|
+
|
128
|
+
Atención con lo que mandas. Originalmente, los dos **POST** que vas hacer son a "pedidos" y "envios". Pero, también podeis mandar "place_order" o "shipping". No hay problema en esto.
|
129
|
+
|
130
|
+
```ruby
|
131
|
+
case resource
|
132
|
+
when "pedidos", "place_order", "new_order" then url = "/pedidos"
|
133
|
+
when "envios", "shipping" then url = "/envios"
|
134
|
+
else url = "/#{resource}"
|
135
|
+
end
|
136
|
+
```
|
137
|
+
|
138
|
+
|
117
139
|
|
118
140
|
### Impresión de etiquetas de envío
|
119
141
|
|
@@ -140,7 +162,7 @@ La GEMa lo convierte en formato que corresponde. Como resultado vas a recibir un
|
|
140
162
|
send_data(response, :filename => "etiquetas_-_#{timenow}.pdf", :disposition => "attachment", :type => "application/pdf")
|
141
163
|
```
|
142
164
|
|
143
|
-
De la misma manera podes crear un request GET y procesar por separado la etiqueta.
|
165
|
+
De la misma manera podes crear un request GET y procesar por separado la etiqueta.
|
144
166
|
|
145
167
|
|
146
168
|
|
@@ -150,7 +172,7 @@ No esta hecho **SPLIT DE PAGO** y **NOTIFICACIONES**. No se sabe cuando y si se
|
|
150
172
|
|
151
173
|
## Contributing
|
152
174
|
|
153
|
-
Sea bienvenido de forkear, modificar y hacer sugerencias. Postea bugs y requests en ISSUES explicando lo que te paso paso a paso para comprender mejor.
|
175
|
+
Sea bienvenido de forkear, modificar y hacer sugerencias. Postea bugs y requests en ISSUES explicando lo que te paso paso a paso para comprender mejor.
|
154
176
|
|
155
177
|
## License
|
156
178
|
|
data/lib/enviopack_api/client.rb
CHANGED
@@ -111,12 +111,13 @@ module EnviopackApi
|
|
111
111
|
|
112
112
|
# DELETE resource
|
113
113
|
# https://www.enviopack.com/documentacion/
|
114
|
-
# req: params
|
114
|
+
# req: params (comma separated list of IDs)
|
115
115
|
# Client.delete(params)
|
116
116
|
def delete(params)
|
117
117
|
url = "/pedidos/descartar-envios"
|
118
|
+
to_query = "ids=#{params}"
|
118
119
|
|
119
|
-
delete_request(url,
|
120
|
+
delete_request(url, to_query)
|
120
121
|
end
|
121
122
|
|
122
123
|
# Print shipping ticket
|
@@ -178,8 +179,9 @@ module EnviopackApi
|
|
178
179
|
# DELETE
|
179
180
|
def delete_request(url, params)
|
180
181
|
begin
|
181
|
-
resource_url = "#{@base_uri}#{url}?access_token=#{@access_token}"
|
182
|
-
response = RestClient.delete resource_url,
|
182
|
+
resource_url = "#{@base_uri}#{url}?access_token=#{@access_token}&#{params}"
|
183
|
+
response = RestClient.delete resource_url, {content_type: :json, accept: :json}
|
184
|
+
|
183
185
|
result = JSON.parse(response, object_class: OpenStruct)
|
184
186
|
return result
|
185
187
|
rescue => e
|