# Administración del catálogo de ubicaciones

La autenticación puede hacerse con Id de sesión (ids) o con usuario (correo/teléfono) y contraseña (pwd), a través de parámetros en la URL o bien, 
con el encabezado ```Authorization: Bearer p_ids```

La determinación de la base de datos del emisor, se realiza por medio del parámetro rfc o nic, se requiere uno de los dos, pero no ambos.

Parámetros generales

* ```p_rfc```. RFC del emisor
* ```p_nic```. NIC del emisor
* ```p_ids```. Identificador de sesión del usuario
* ```p_uid```. Identificador del usuario, correo o teléfono móvil
* ```p_pwd```. Contraseña correspondiente al p_uid

## Consultar ubicaciones

Obtiene un array con la información de ubicaciones que corresponde a los parámetros suministrados.

### Solicitud
```
Method: GET 
https://factudesk.api.induxsoft.net/{p_rfc|p_nic}/ubicaciones/?ids=p_ids&uid=p_uid&pwd=p_wd&filtro=p_filtro&limit=p_limit
```

#### Parámetros
* ```p_filtro```. Texto de filtro para los resultados
* ```p_limit```. Cantidad máxima de filas a devolver, si se omite se asumen 500, el máximo admitido es 2000

### Respuesta
```
{
    "success":true,
    "data":[
       {
        "sys_pk": Clave primaria,
        "sys_guid": "GUID de la fila",
        "sys_dtcreated": "Fecha de creación",
        ... otros campos de sistema...,
        "id": "Id de la ubicación",
        "rfc": "RFC",
        "nombre": "Nombre",
        "res_fiscal": "Residencia fiscal",
        "registro_fiscal_pais": "Registro fiscal del pais",
        "pais": "Codigo del pais",
        "cp": "Código postal",
        "estado": "Código del estado",
        "municipio": "Código del municipio",
        "localidad": "Localidad",
        "colonia": "Colonia",
        "calle": "Calle",
        "numext": "Número exterior",
        "numint": "Número interior",
        "referencia": "Referencia",
       },
		...
    ]
}
```

## Consultar una ubicación

Obtiene la información de la ubicación correspondiente.

### Solicitud

```
Method: GET 
https://factudesk.api.induxsoft.net/{p_rfc|p_nic}/ubicaciones/{p_sys_pk}/?ids=p_ids&uid=p_uid&pwd=p_wd
```
```
Respuesta
{
    "success":true,
    "data":{
        "sys_pk": Clave primaria,
        "sys_guid": "GUID de la fila",
        "sys_dtcreated": "Fecha de creación",
        ... otros campos de sistema...,
        "id": "Id de la ubicación",
        "rfc": "RFC",
        "nombre": "Nombre",
        "res_fiscal": "Residencia fiscal",
        "registro_fiscal_pais": "Registro fiscal del pais",
        "pais": "Codigo del pais",
        "cp": "Código postal",
        "estado": "Código del estado",
        "municipio": "Código del municipio",
        "localidad": "Localidad",
        "colonia": "Colonia",
        "calle": "Calle",
        "numext": "Número exterior",
        "numint": "Número interior",
        "referencia": "Referencia",
       }
}
```

## Agregar una ubicación
Agrega una ubicación a la base de datos del emisor

### Solicitud
```

Method: POST
https://factudesk.api.induxsoft.net/{p_rfc|p_nic}/ubicaciones/?ids=p_ids&uid=p_uid&pwd=p_wd

Payload
{
   "id": "Id de la ubicación",
	"rfc": "RFC",
	"nombre": "Nombre",
	"res_fiscal": "Residencia fiscal",
	"registro_fiscal_pais": "Registro fiscal del pais",
	"pais": "Codigo del pais",
	"cp": "Código postal",
	"estado": "Código del estado",
	"municipio": "Código del municipio",
	"localidad": "Localidad",
	"colonia": "Colonia",
	"calle": "Calle",
	"numext": "Número exterior",
	"numint": "Número interior",
	"referencia": "Referencia",
}
```
### Respuesta

```
{
    "success":true,
    "data":{
        "sys_pk": Clave primaria,
        "sys_guid": "GUID de la fila",
        "sys_dtcreated": "Fecha de creación",
        ... otros campos de sistema...,
        "id": "Id de la ubicación",
        "rfc": "RFC",
        "nombre": "Nombre",
        "res_fiscal": "Residencia fiscal",
        "registro_fiscal_pais": "Registro fiscal del pais",
        "pais": "Codigo del pais",
        "cp": "Código postal",
        "estado": "Código del estado",
        "municipio": "Código del municipio",
        "localidad": "Localidad",
        "colonia": "Colonia",
        "calle": "Calle",
        "numext": "Número exterior",
        "numint": "Número interior",
        "referencia": "Referencia",
       }
}
```



## Modificar una ubicación

Actualiza información de una ubicación en la base de datos del emisor, solo los datos que se suministran.

### Solicitud
```
Method: PATCH
https://factudesk.api.induxsoft.net/{p_rfc|p_nic}/conceptos/{p_sys_pk}/?ids=p_ids&uid=p_uid&pwd=p_wd

{
   "calle": "Calle",
	"numext": "Número exterior",
	"numint": "Número interior",
	"referencia": "Referencia",
}
```

* ```p_sys_pk``` Clave primaria de una ubicación

### Respuesta

```
{
    "success":true,
    "data":{
        "sys_pk": Clave primaria,
        "sys_guid": "GUID de la fila",
        "sys_dtcreated": "Fecha de creación",
        ... otros campos de sistema...,
        "id": "Id de la ubicación",
        "rfc": "RFC",
        "nombre": "Nombre",
        "res_fiscal": "Residencia fiscal",
        "registro_fiscal_pais": "Registro fiscal del pais",
        "pais": "Codigo del pais",
        "cp": "Código postal",
        "estado": "Código del estado",
        "municipio": "Código del municipio",
        "localidad": "Localidad",
        "colonia": "Colonia",
        "calle": "Calle",
        "numext": "Número exterior",
        "numint": "Número interior",
        "referencia": "Referencia",
       }
}
```



## Eliminar una ubicación

Elimina una ubicación en la base de datos del emisor


### Solicitud
```
Method: DELETE
https://factudesk.api.induxsoft.net/{p_rfc|p_nic}/ubicaciones/{p_sys_pk}?ids=p_ids&uid=p_uid&pwd=p_wd

```

* ```p_sys_pk``` Clave primaria de una ubicación

### Respuesta
```
{
    "success":true,
    "data":null
}
```