# RFC validation

`POST /api/validate/rfc`

Base URL: `https://demo-api.incodesmile.com` — Incode demo environment

Check for valid RFC. If RFC is not found then validRFC field will be false.

## Path & query parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `api-version` | header | string | yes |  |

## Request body

Content-Type: `application/json`

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `rfc` | string |  |  |

## Responses

### 200

RFC validation result

Response body (`application/json`):

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `validRFC` | boolean |  |  |
| `status` | string |  |  |
| `message` | string |  |  |
| `rfcType` | string |  |  |
| `messageCode` | string |  |  |
| `errorMessage` | string |  |  |

```json
{
  "validRFC": true,
  "status": "OK",
  "message": "RFC Valido",
  "rfcType": "F",
  "messageCode": "0"
}
```

### 400

Invalid RFC format

Response body (`application/json`):

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `timestamp` | integer (int64) |  | UTC timestamp in milliseconds |
| `status` | integer (int32) |  | Custom error code or HTTP status code |
| `error` | string |  | HTTP status error |
| `message` | string |  | Custom error message |
| `path` | string |  | Endpoint path |
| `details` | object |  | Custom error details |

```json
{
  "timestamp": 1622548800000,
  "status": 400,
  "error": "Bad Request",
  "message": "BadRequestException: Invalid curp",
  "path": "/api/validate/rfc"
}
```

### 500

Internal server error during validation

Response body (`application/json`):

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `timestamp` | integer (int64) |  | UTC timestamp in milliseconds |
| `status` | integer (int32) |  | Custom error code or HTTP status code |
| `error` | string |  | HTTP status error |
| `message` | string |  | Custom error message |
| `path` | string |  | Endpoint path |
| `details` | object |  | Custom error details |

```json
{
  "timestamp": 1622548800000,
  "status": 500,
  "error": "Internal Server Error",
  "path": "/api/validate/rfc"
}
```
