swagger: '2.0'
info:
  description: "EVA Employment Verification API validates whether a Client (loan/credit applicant) with formal employment in the private sector has kept his job. It allows to know the industry of the Client employer and gives a risk indicator for that industry (low, medium or high). In the event that the Client does not have formal employment in the private sector, EVA Employment Verification API provides the last date of termination.<br/><br><img src='https://developer.circulodecredito.com.mx/sites/default/files/2020-10/circulo_de_credito-apihub.png' height='40' width='170'/></p><br/>"
  version: '1.0.0'
  title: 'EVA Employment Verification API - Sandbox'
  termsOfService: 'https://developer.circulodecredito.com.mx/legal-mx'
  contact:
    email: 'api@circulodecredito.com.mx'
host: 'services.circulodecredito.com.mx'
basePath: '/sandbox'
tags:
  - name: 'EVA Employment Verification API'
    externalDocs:
      description: 'API Hub'
      url: 'https://developer.circulodecredito.com.mx/en/products/eva'
  - name: 'EVA Employment Verification API ISSSTE'
    externalDocs:
      description: 'API Hub'
      url: 'https://developer.circulodecredito.com.mx/en/products/eva'
schemes:
  - 'https'
parameters:
  x-api-key:
    in: 'header'
    name: 'x-api-key'
    description: 'The Consumer Key assigned to the application you have registered in API Hub.'
    required: true
    type: 'string'
  inquiryId:
    in: 'path'
    name: 'inquiryId'
    description: 'The identifier of the inquiry.'
    required: true
    type: 'string'
  page:
    in: 'query'
    name: 'page'
    description: 'Page to query.'
    required: false
    type: 'integer'
  perPage:
    in: 'query'
    name: 'perPage'
    description: 'Rows per page.'
    required: false
    type: 'integer'
  startAt:
    in: 'query'
    name: 'startAt'
    description: 'Initial date. As defined by date-time - RFC3339.'
    required: false
    type: 'string'
    format: 'date-time'
  endAt:
    in: 'query'
    name: 'endAt'
    description: 'End date.  As defined by date-time - RFC3339.'
    required: false
    type: 'string'
    format: 'date-time'
  inquiryStatus:
    in: 'query'
    name: 'inquiryStatus'
    description: 'Inquiry status.'
    enum: ["RI", "SN", "DN", "NDN", "CI"]
    required: false
    type: 'string'
  successCheck:
    in: 'query'
    name: 'successCheck'
    description: 'Inquiry process result.'
    required: false
    type: 'boolean'
paths:
  '/v1/eva/employmentverifications/{inquiryId}':
    parameters:
      - $ref: '#/parameters/x-api-key'
      - $ref: '#/parameters/inquiryId'
    get:
      summary: 'Returns the employment verification process payload.'
      description: '<p>Returns the employment verification process payload associated with the inquiry. The inquiry is identified by the <samp>{inquiryId}</samp> path parameter.</p><p>Remember the inquiry status of every employment verification process gives you more information about the process stage.</p><p><b>Inquiry Status</b></p><table border="1"><tr align="center"><td><h4>Received Inquiry</h4></td><td width="10%"><h4>RI</h4></td><td align="left">Círculo de Crédito has received the employment verification inquiry. Círculo de Crédito will begin processing it as soon as possible.</td></tr><tr align="center"><td><h4>Sending Notification</h4></td><td width="10%"><h4>SN</h4></td><td align="left">Círculo de Crédito has processed the inquiry. Círculo de Crédito is sending the Webhook event notification through the API Hub.</td></tr><tr align="center"><td><h4>Delivered Notification</h4></td><td width="10%"><h4>DN</h4></td><td align="left">Círculo de Crédito has finished the processing of the inquiry. Círculo de Crédito sent the notification to the Webhook API through API Hub and it received the respective acknowledge.</td></tr><tr align="center"><td><h4>Not Delivered Notification</h4></td><td width="10%"><h4>NDN</h4></td><td align="left">Círculo de Crédito has completed the processing of the inquiry. Círculo de Crédito tried to send the notification to the  Webhook API on several times, however, it never got the acknowledge.</td></tr><tr align="center"><td><h4>Consumed Inquiry</h4></td><td width="10%"><h4>CI</h4></td><td align="left">You have consumed the response payload associated with the inquiry regardless of the outcome of the notification process.</td></tr><tr align="center"><td><h4>Expired Inquiry</h4></td><td width="10%"><h4>EI</h4></td><td align="left">The inquiry and the associated result have been archived. Only inquiries that have been made in the last 30 days will be shown. The inquiries that have the EI status are not showing.</td></tr></table><p>When you create a subscription in the Sandbox environment for listening to the "employmentcheck" event, we create some inquiries in order you could test this method.</p><p>You could get the payload from different inquiries in different employment verification process stages (Inquiry Status).</p><p><b>Sandbox Use Cases</b></p><table border="1"><tr><th>Use case</th><th width="10%">Inquiry Status</th><th width="50%">InquiryId</th></tr><tr align="center"><td  align="left">The employment verification process associated with the <samp>{inquiryId}</samp> path parameter has not yet been completed. The request does not include NSS (Social Security Number).</td><td><h4>RI</h4></td><td><samp>629d85a8-9dd2-4433-bec9-eb17ee6441dc</samp></td></tr><tr align="center"><td  align="left">The employment verification process associated with the <samp>{inquiryId}</samp> path parameter has not yet been completed. The request includes NSS (Social Security Number).</td><td><h4>RI</h4></td><td><samp>2423c91d-be5d-4092-9348-952597ca2849</samp></td></tr><tr align="center"><td  align="left">The output of the employment verification process associated with the <samp>{inquiryId}</samp> has been consumed. The request does not include NSS (Social Security Number).</td><td><h4>CI</h4></td><td><samp>a3d7e85f-1578-4713-8190-1a20691d549d</samp></td></tr><tr align="center"><td  align="left">The output of the employment verification process associated with the <samp>{inquiryId}</samp> has been consumed. The request includes NSS (Social Security Number).</td><td><h4>CI</h4></td><td><samp>ad59e561-f759-4312-8af6-13f43d9fd936</samp></td></tr></table>'
      tags:
        - 'EVA Employment Verification API'
      operationId: 'getEmploymentVerification'
      consumes:
        - 'application/json'
      produces:
        - 'application/json'
      responses:
        '200':
          description: 'OK - Returns the employment verification process information.'
          schema:
            $ref: '#/definitions/AckSuccessEVConsumption'
        '400':
          description: 'Bad request.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "400"
                  message: "Missign parameters {x-api-key}."
        '401':
          description: 'Unauthorized.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: '401.1'
                  message: 'Unauthorized, invalid x-api-key.'
                - code: '401.2'
                  message: 'Unauthorized, invalid credentials.'
                - code: '401.3'
                  message: 'Unauthorized, you do not have the product.'
                - code: '401.4'
                  message: 'Unauthorized, you do not have access to the resource.'
        '404':
          description: 'Inquiry not found.'
          schema:
            $ref: '#/definitions/AckFailureEVConsumption'
          examples:
            application/json:
              acknowledgeId: 45f53c81-04e0-42df-abd8-de217e2edf2a
              dateTime: '2020-09-01T03:36:38Z'
              operation: consume
              message: The request has been consumed.
              employmentVerification:
                errors:
                - code: '400'
                  message: The inquiry does not exist.
                - code: '404.1'
                  message: The data in the IMSS database have inconsistencies.
                - code: '404.2'
                  message: The email is already associated with another CURP.
                - code: '404.3'
                  message: The person does not have NSS.
                - code: '404.4'
                  message: The CURP was not found in the external entity (RENAPO)."
                request:
                  employmentVerificationRequestId: 23fa2ec7-3294-4aa4-ba65-a0f49a75bfc4
                  subscriptionId: 51752e30-eab2-4368-a4eb-ce5a34d90f04
                  inquiryId: a99c3501-7b3a-4b3e-8ca5-1e48225b8176
                  curp: PUPJ970229HDFZZG61
                  email: api61@circulodecredito.com.mx
                  inquiryStatus: DN
                  successCheck: false
        '410':
          description: 'Gone -  The maximum time in order to obtain the payload has expired: 30 days.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
                errors:
                  - code: "410"
                    message: "The maximum time in order to obtain the payload has expired."
        '425':
          description: 'Too early - The employment verification process associated with the {inquiryId} path parameter has not yet been completed.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
                errors:
                  - code: "425"
                    message: "The employment verification process associated with the {inquiryId} path parameter has not yet been completed."
        '429':
          description: 'Too many requests.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "429"
                  message: "Too many requests."
        '500':
          description: "Internal server error."
          schema:
            $ref: '#/definitions/AckFailureEVConsumption'
          examples:
            application/json:
              acknowledgeId: 6a2224ec-1e48-4bbd-ba2c-1971dd783735
              dateTime: '2020-09-01T05:32:41Z'
              operation: consume
              message: The request has been consumed.
              employmentVerification:
                errors:
                  - code: "500"
                    message: "There was an unexpected error, try again later."
                  - code: '500.1'
                    message: "The request could not be processed."
                request:
                  employmentVerificationRequestId: d029a1ba-3566-4361-834a-f44add8cc4f7
                  subscriptionId: 51752e30-eab2-4368-a4eb-ce5a34d90f04
                  inquiryId: 43d21139-e1fa-4768-8b78-79aa3ca1993f
                  curp: PUPJ970229HDFZZG70
                  email: api70@circulodecredito.com.mx
                  inquiryStatus: RI
                  successCheck: false
        '503':
          description: "Service unavailable."
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "503"
                  message: "Service unavailable."
  '/v1/eva/employmentverifications':
    parameters:
      - $ref: '#/parameters/x-api-key'
    get:
      summary: 'Returns the list of employment verification processes you have requested.'
      description: 'Returns the list of employment verification processes you have requested. You could filter the rows by date using the <samp>{startAt}</samp> and <samp>{endAt}</samp> parameters. You could filter the rows by inquiry status using the <samp>{inquiryStatus}</samp> parameter and the process result using the <samp>{sucessCheck}</samp> parameter. The maximum number of returned rows is 20. You could use the <samp>{page}</samp> and <samp>{perPage}</samp> parameters in order to navigate through the list.'
      tags:
        - 'EVA Employment Verification API'
      operationId: 'getEmploymentVerifications'
      consumes:
        - 'application/json'
      produces:
        - 'application/json'
      parameters:
        - $ref: '#/parameters/page'
        - $ref: '#/parameters/perPage'
        - $ref: '#/parameters/startAt'
        - $ref: '#/parameters/endAt'
        - $ref: '#/parameters/inquiryStatus'
        - $ref: '#/parameters/successCheck'
      responses:
        '200':
          description: 'OK - Returns an employment verification processes list.'
          schema:
            $ref: '#/definitions/EmploymentVerificationMetadata'
        '400':
          description: 'Bad request.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "400"
                  message: "Missign parameters {x-api-key}."
        '401':
          description: 'Unauthorized.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: '401.1'
                  message: 'Unauthorized, invalid x-api-key.'
                - code: '401.2'
                  message: 'Unauthorized, invalid credentials.'
                - code: '401.3'
                  message: 'Unauthorized, you do not have the product.'
                - code: '401.4'
                  message: 'Unauthorized, you do not have access to the resource.'
        '404':
          description: 'Not found.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
                errors:
                  - code: "404"
                    message: "Page not found."
        '429':
          description: 'Too many requests.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "429"
                  message: "Too many requests."
        '500':
          description: "Internal server error."
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "500"
                  message: "There was an unexpected error, try again later."
        '503':
          description: "Service unavailable."
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "503"
                  message: "Service unavailable."
  '/v1/eva/employmentverifications/withPrivacyNotice':
    post:
      summary: 'Requests a person employment verification process.'
      description: '<p>Requests a person employment verification process.</p><p>The Sandbox environment has several use cases you can use to prototype your app. In this document we only show some of them. Please go to https://developer.circulodecredito.com.mx/en/products/eva and download the Postman Collection with the complete data set.</p><p>Note: Replace the field <samp>${subscriptionId}</samp> with your subscription, likewise replace <samp>${employmentVerificationRequestId}</samp> with an unique UUID.</p><p><b>Sandbox Use Cases</b></p><table border="1"><tr><th width="5%">Use case number</th><th width="45%">Description</th><th width="50%">JSON request</th></tr><tr><td align="center">41</td><td>The Client (loan/credit applicant) has a formal employment in the private sector. The employer Industry Risk Segment is Low.</td><td><samp>{"curp": "PUPJ970229HDFZZG39", "email": "api39@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"}</samp></td></tr><tr><td align="center">42</td><td>The Client (loan/credit applicant) has a formal employment. The employer Industry Risk Segment is Medium.</td><td><samp>{"curp": "PUPJ970229HDFZZG40", "email": "api40@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"}</samp></td></tr><tr><td align="center">43</td><td>The Client (loan/credit applicant) has a formal employment. The employer Industry Risk Segment is High.</td><td><samp>{"curp": "PUPJ970229HDFZZG41", "email": "api41@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"}</samp></td></tr><tr><td align="center">57</td><td>The Client (loan/credit applicant) does not have a formal employment in the private sector.</td><td><samp>{"curp": "PUPJ970229HDFZZG57", "email": "api57@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}</samp></td></tr></table>'
      tags:
        - 'EVA Employment Verification API'
      operationId: 'employmentverificationsWithPrivacyNotice'
      consumes:
        - 'application/json'
      produces:
        - 'application/json'
      parameters:
        - $ref: '#/parameters/x-api-key'
        - in: 'body'
          name: 'request'
          description: 'Input parameters in order to start a employment verification process.'
          required: true
          schema:
            $ref: '#/definitions/EmploymentVerificationWithPrivacyNotice'
      responses:
        '200':
          description: 'OK - Returns an employment verification request acknowledge.'
          schema:
            $ref: '#/definitions/AckEVRequest'
        '400':
          description: 'Bad request.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "400"
                  message: "Missign parameters {employmentVerificationRequestId, subscriptionId, curp, email}"
        '401':
          description: 'Unauthorized.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: '401.1'
                  message: 'Unauthorized, invalid x-api-key.'
                - code: '401.2'
                  message: 'Unauthorized, invalid credentials.'
                - code: '401.3'
                  message: 'Unauthorized, you do not have the product.'
                - code: '401.4'
                  message: 'Unauthorized, you do not have access to the resource.'
        '403':
          description: 'Forbidden.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: '403.1'
                  message: 'We could not verify the signature, x-signature is invalid.'
        '429':
          description: 'Too many requests.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "429"
                  message: "Too many requests."
        '500':
          description: "Internal server error."
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:

                - code: "500"
                  message: "There was an unexpected error, try again later."
        '503':
          description: "Service unavailable."
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "503"
                  message: "Service unavailable."
  '/v1/eva/employmentverifications/withAuthorization':
    post:
      summary: 'Requests a person employment verification process.'
      description: '<p>Requests a person employment verification process.</p><p>The Sandbox environment has several use cases you can use to prototype your app. In this document we only show some of them. Please go to https://developer.circulodecredito.com.mx/en/products/eva and download the Postman Collection with the complete data set.</p><p>Note: Replace the field <samp>${subscriptionId}</samp> with your subscription, likewise replace <samp>${employmentVerificationRequestId}</samp> with an unique UUID.</p><p><b>Sandbox Use Cases</b></p><table border="1"><tr><th width="5%">Use case number</th><th width="45%">Description</th><th width="50%">JSON request</th></tr><tr><td align="center">41</td><td>The Client (loan/credit applicant) has a formal employment in the private sector. The employer Industry Risk Segment is Low.</td><td><samp>{"curp": "PUPJ970229HDFZZG39", "email": "api39@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"}</samp></td></tr><tr><td align="center">42</td><td>The Client (loan/credit applicant) has a formal employment. The employer Industry Risk Segment is Medium.</td><td><samp>{"curp": "PUPJ970229HDFZZG40", "email": "api40@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"}</samp></td></tr><tr><td align="center">43</td><td>The Client (loan/credit applicant) has a formal employment. The employer Industry Risk Segment is High.</td><td><samp>{"curp": "PUPJ970229HDFZZG41", "email": "api41@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"}</samp></td></tr><tr><td align="center">57</td><td>The Client (loan/credit applicant) does not have a formal employment in the private sector.</td><td><samp>{"curp": "PUPJ970229HDFZZG57", "email": "api57@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}</samp></td></tr></table>'
      tags:
        - 'EVA Employment Verification API'
      operationId: 'postEmploymentVerification'
      consumes:
        - 'application/json'
      produces:
        - 'application/json'
      parameters:
        - $ref: '#/parameters/x-api-key'
        - in: 'body'
          name: 'request'
          description: 'Input parameters in order to start a employment verification process.'
          required: true
          schema:
            $ref: '#/definitions/EmploymentVerification'
      responses:
        '200':
          description: 'OK - Returns an employment verification request acknowledge.'
          schema:
            $ref: '#/definitions/AckEVRequest'
        '400':
          description: 'Bad request.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "400"
                  message: "Missign parameters {employmentVerificationRequestId, subscriptionId, curp, email}"
        '401':
          description: 'Unauthorized.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: '401.1'
                  message: 'Unauthorized, invalid x-api-key.'
                - code: '401.2'
                  message: 'Unauthorized, invalid credentials.'
                - code: '401.3'
                  message: 'Unauthorized, you do not have the product.'
                - code: '401.4'
                  message: 'Unauthorized, you do not have access to the resource.'
        '403':
          description: 'Forbidden.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: '403.1'
                  message: 'We could not verify the signature, x-signature is invalid.'
        '429':
          description: 'Too many requests.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "429"
                  message: "Too many requests."
        '500':
          description: "Internal server error."
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:

                - code: "500"
                  message: "There was an unexpected error, try again later."
        '503':
          description: "Service unavailable."
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "503"
                  message: "Service unavailable."
  '/v2/eva/employmentverifications/{inquiryId}':
    parameters:
      - $ref: '#/parameters/x-api-key'
      - $ref: '#/parameters/inquiryId'
    get:
      summary: 'Returns the employment verification process payload.'
      description: '<p>Returns the employment verification process payload associated with the inquiry. The inquiry is identified by the <samp>{inquiryId}</samp> path parameter.</p><p>Remember the inquiry status of every employment verification process gives you more information about the process stage.</p><p><b>Inquiry Status</b></p><table border="1"><tr align="center"><td><h4>Received Inquiry</h4></td><td width="10%"><h4>RI</h4></td><td align="left">Círculo de Crédito has received the employment verification inquiry. Círculo de Crédito will begin processing it as soon as possible.</td></tr><tr align="center"><td><h4>Sending Notification</h4></td><td width="10%"><h4>SN</h4></td><td align="left">Círculo de Crédito has processed the inquiry. Círculo de Crédito is sending the Webhook event notification through the API Hub.</td></tr><tr align="center"><td><h4>Delivered Notification</h4></td><td width="10%"><h4>DN</h4></td><td align="left">Círculo de Crédito has finished the processing of the inquiry. Círculo de Crédito sent the notification to the Webhook API through API Hub and it received the respective acknowledge.</td></tr><tr align="center"><td><h4>Not Delivered Notification</h4></td><td width="10%"><h4>NDN</h4></td><td align="left">Círculo de Crédito has completed the processing of the inquiry. Círculo de Crédito tried to send the notification to the  Webhook API on several times, however, it never got the acknowledge.</td></tr><tr align="center"><td><h4>Consumed Inquiry</h4></td><td width="10%"><h4>CI</h4></td><td align="left">You have consumed the response payload associated with the inquiry regardless of the outcome of the notification process.</td></tr><tr align="center"><td><h4>Expired Inquiry</h4></td><td width="10%"><h4>EI</h4></td><td align="left">The inquiry and the associated result have been archived. Only inquiries that have been made in the last 30 days will be shown. The inquiries that have the EI status are not showing.</td></tr></table><p>When you create a subscription in the Sandbox environment for listening to the "employmentcheck" event, we create some inquiries in order you could test this method.</p><p>You could get the payload from different inquiries in different employment verification process stages (Inquiry Status).</p><p><b>Sandbox Use Cases</b></p><table border="1"><tr><th>Use case</th><th width="10%">Inquiry Status</th><th width="50%">InquiryId</th></tr><tr align="center"><td  align="left">The employment verification process associated with the <samp>{inquiryId}</samp> path parameter has not yet been completed. The request does not include NSS (Social Security Number).</td><td><h4>RI</h4></td><td><samp>629d85a8-9dd2-4433-bec9-eb17ee6441dc</samp></td></tr><tr align="center"><td  align="left">The employment verification process associated with the <samp>{inquiryId}</samp> path parameter has not yet been completed. The request includes NSS (Social Security Number).</td><td><h4>RI</h4></td><td><samp>2423c91d-be5d-4092-9348-952597ca2849</samp></td></tr><tr align="center"><td  align="left">The output of the employment verification process associated with the <samp>{inquiryId}</samp> has been consumed. The request does not include NSS (Social Security Number).</td><td><h4>CI</h4></td><td><samp>a3d7e85f-1578-4713-8190-1a20691d549d</samp></td></tr><tr align="center"><td  align="left">The output of the employment verification process associated with the <samp>{inquiryId}</samp> has been consumed. The request includes NSS (Social Security Number).</td><td><h4>CI</h4></td><td><samp>ad59e561-f759-4312-8af6-13f43d9fd936</samp></td></tr></table>'
      tags:
        - 'EVA Employment Verification API ISSSTE'
      operationId: 'getEmploymentVerificationIss'
      consumes:
        - 'application/json'
      produces:
        - 'application/json'
      responses:
        '200':
          description: 'OK - Returns the employment verification process information.'
          schema:
            $ref: '#/definitions/AckSuccessEVConsumptionISSSTE'
        '400':
          description: 'Bad request.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "400"
                  message: "Missign parameters {x-api-key}."
        '401':
          description: 'Unauthorized.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: '401.1'
                  message: 'Unauthorized, invalid x-api-key.'
                - code: '401.2'
                  message: 'Unauthorized, invalid credentials.'
                - code: '401.3'
                  message: 'Unauthorized, you do not have the product.'
                - code: '401.4'
                  message: 'Unauthorized, you do not have access to the resource.'
        '404':
          description: 'Inquiry not found.'
          schema:
            $ref: '#/definitions/AckFailureEVConsumption'
          examples:
            application/json:
              acknowledgeId: 45f53c81-04e0-42df-abd8-de217e2edf2a
              dateTime: '2020-09-01T03:36:38Z'
              operation: consume
              message: The request has been consumed.
              employmentVerification:
                errors:
                  - code: '400'
                    message: The inquiry does not exist.
                  - code: '404.1'
                    message: The data in the IMSS database have inconsistencies.
                  - code: '404.2'
                    message: The email is already associated with another CURP.
                  - code: '404.3'
                    message: The person does not have NSS.
                  - code: '404.4'
                    message: The CURP was not found in the external entity (RENAPO)."
                request:
                  employmentVerificationRequestId: 23fa2ec7-3294-4aa4-ba65-a0f49a75bfc4
                  subscriptionId: 51752e30-eab2-4368-a4eb-ce5a34d90f04
                  inquiryId: a99c3501-7b3a-4b3e-8ca5-1e48225b8176
                  curp: PUPJ970229HDFZZG61
                  email: api61@circulodecredito.com.mx
                  inquiryStatus: DN
                  successCheck: false
        '410':
          description: 'Gone -  The maximum time in order to obtain the payload has expired: 30 days.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "410"
                  message: "The maximum time in order to obtain the payload has expired."
        '425':
          description: 'Too early - The employment verification process associated with the {inquiryId} path parameter has not yet been completed.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "425"
                  message: "The employment verification process associated with the {inquiryId} path parameter has not yet been completed."
        '429':
          description: 'Too many requests.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "429"
                  message: "Too many requests."
        '500':
          description: "Internal server error."
          schema:
            $ref: '#/definitions/AckFailureEVConsumption'
          examples:
            application/json:
              acknowledgeId: 6a2224ec-1e48-4bbd-ba2c-1971dd783735
              dateTime: '2020-09-01T05:32:41Z'
              operation: consume
              message: The request has been consumed.
              employmentVerification:
                errors:
                  - code: "500"
                    message: "There was an unexpected error, try again later."
                  - code: '500.1'
                    message: "The request could not be processed."
                request:
                  employmentVerificationRequestId: d029a1ba-3566-4361-834a-f44add8cc4f7
                  subscriptionId: 51752e30-eab2-4368-a4eb-ce5a34d90f04
                  inquiryId: 43d21139-e1fa-4768-8b78-79aa3ca1993f
                  curp: PUPJ970229HDFZZG70
                  email: api70@circulodecredito.com.mx
                  inquiryStatus: RI
                  successCheck: false
        '503':
          description: "Service unavailable."
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "503"
                  message: "Service unavailable."
  '/v2/eva/employmentverifications/withPrivacyNotice':
    post:
      summary: 'Requests a person employment verification process.'
      description: '<p>Requests a person employment verification process.</p><p>The Sandbox environment has several use cases you can use to prototype your app. In this document we only show some of them. Please go to https://developer.circulodecredito.com.mx/en/products/eva and download the Postman Collection with the complete data set.</p><p>Note: Replace the field <samp>${subscriptionId}</samp> with your subscription, likewise replace <samp>${employmentVerificationRequestId}</samp> with an unique UUID.</p><p><b>Sandbox Use Cases</b></p><table border="1"><tr><th width="5%">Use case number</th><th width="45%">Description</th><th width="50%">JSON request</th></tr><tr><td align="center">41</td><td>The Client (loan/credit applicant) has a formal employment in the private sector. The employer Industry Risk Segment is Low.</td><td><samp>{"curp": "PUPJ970229HDFZZG39", "email": "api39@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"}</samp></td></tr><tr><td align="center">42</td><td>The Client (loan/credit applicant) has a formal employment. The employer Industry Risk Segment is Medium.</td><td><samp>{"curp": "PUPJ970229HDFZZG40", "email": "api40@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"}</samp></td></tr><tr><td align="center">43</td><td>The Client (loan/credit applicant) has a formal employment. The employer Industry Risk Segment is High.</td><td><samp>{"curp": "PUPJ970229HDFZZG41", "email": "api41@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"}</samp></td></tr><tr><td align="center">57</td><td>The Client (loan/credit applicant) does not have a formal employment in the private sector.</td><td><samp>{"curp": "PUPJ970229HDFZZG57", "email": "api57@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}</samp></td></tr></table>'
      tags:
        - 'EVA Employment Verification API ISSSTE'
      operationId: 'employmentverificationsWithPrivacyNoticeIss'
      consumes:
        - 'application/json'
      produces:
        - 'application/json'
      parameters:
        - $ref: '#/parameters/x-api-key'
        - in: 'body'
          name: 'request'
          description: 'Input parameters in order to start a employment verification process.'
          required: true
          schema:
            $ref: '#/definitions/EmploymentVerificationWithPrivacyNotice'
      responses:
        '200':
          description: 'OK - Returns an employment verification request acknowledge.'
          schema:
            $ref: '#/definitions/AckEVRequest'
        '400':
          description: 'Bad request.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "400"
                  message: "Missign parameters {employmentVerificationRequestId, subscriptionId, curp, email}"
        '401':
          description: 'Unauthorized.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: '401.1'
                  message: 'Unauthorized, invalid x-api-key.'
                - code: '401.2'
                  message: 'Unauthorized, invalid credentials.'
                - code: '401.3'
                  message: 'Unauthorized, you do not have the product.'
                - code: '401.4'
                  message: 'Unauthorized, you do not have access to the resource.'
        '403':
          description: 'Forbidden.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: '403.1'
                  message: 'We could not verify the signature, x-signature is invalid.'
        '429':
          description: 'Too many requests.'
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "429"
                  message: "Too many requests."
        '500':
          description: "Internal server error."
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:

                - code: "500"
                  message: "There was an unexpected error, try again later."
        '503':
          description: "Service unavailable."
          schema:
            $ref: '#/definitions/Errors'
          examples:
            application/json:
              errors:
                - code: "503"
                  message: "Service unavailable."
definitions:
  AckSuccessEVConsumptionISSSTE:
    title: AckSuccessEVConsumptionISSSTE
    description: Acknowledge of a successful employment verification process ISSSTE.
    allOf:
      - $ref: '#/definitions/AckEmploymentVerification'
      - type: object
        properties:
          employmentVerification:
            type: object
            allOf:
              - $ref: '#/definitions/SuccessEVConsumptionISSSTE'
              - description: Information about a successful employment verification process.

  SuccessEVConsumptionISSSTE:
    title: SuccessEVConsumptionISSSTE
    description: Information about a successful employment verification process.
    type: object
    properties:
      curp:
        description: CURP (loan/credit applicant MX Id).
        example: DISG521217
        readOnly: true
        type: string
      request:
        type: object
        allOf:
          - $ref: '#/definitions/EmploymentVerification'
          - description: Employment verification information
      names:
        description: Concatenation of firstname and surname.
        example: MARIA GUADALUPE DIAZ SANCHEZ
        readOnly: true
        type: string
      rfc:
        description: RFC (loan/credit applicant MX Id).
        example: DISG521217
        readOnly: true
        type: string
      gender:
        type: object
        allOf:
          - $ref: '#/definitions/Gender'
          - description: Gender with which the person registered.
            example: MUJER
            readOnly: true
      birthday:
        description: Birthday. As defined by full-date RFC3339.
        example: 1829-04-01
        readOnly: true
        type: string
        format: date
      civilState:
        type: object
        allOf:
          - $ref: '#/definitions/CivilState'
          - description: Civil state
            example: CASADO (A)
            readOnly: true
      nss:
        example: '80995206994'
        readOnly: true
        type: string
      startDateRLastPosition:
        description: Last employment registration date. As defined by full-date RFC3339.
        example: 2002-02-16
        readOnly: true
        type: string
        format: date
      dateEntryFederalGovernment:
        description: Date of entry into the Federal Government. As defined by full-date RFC3339.
        example: 1999-05-01
        readOnly: true
        type: string
        format: date
      endDateRLastPosition:
        description: Last employment registration date. As defined by full-date RFC3339.
        readOnly: true
        type: string
        format: date
      accessMedicalService:
        type: object
        allOf:
          - $ref: '#/definitions/AccessMedicalService'
          - description: Work status.
            readOnly: true
      typeBeneficiary:
        type: object
        allOf:
          - $ref: '#/definitions/TypeBeneficiary'
          - example: TRABAJADOR
            readOnly: true
      affiliationStatus:
        type: object
        allOf:
          - $ref: '#/definitions/AffiliationStatus'
          - example: INACTIVO
            readOnly: true
      laborData:
        description: Detail of the user’s working history
        type: array
        items:
          $ref: '#/definitions/LaborDataDetail'
      address:
        $ref: '#/definitions/AddressDetail'
      clinic:
        $ref: '#/definitions/ClinicDetail'
      status:
        description: Status of the response
        example: OK
        readOnly: true
        type: string
      validationCode:
        description: Unique validation execution code.
        example: gi1621387427.1002612
        readOnly: true
        type: string
      messageCode:
        description: Message Code.
        example: '0'
        readOnly: true
        type: string
  CivilState:
    title: CivilState
    description: Civil state
    example: CASADO (A)
    type: string
    enum:
      - CASADO (A)
      - SOLTERO (A)
      - VIUDO (A)
      - DIVORCIADO (A)
  Gender:
    title: Gender
    description: Gender with which the person registered.
    example: MUJER
    type: string
    enum:
      - MUJER
      - HOMBRE
  InquiryStatus:
    title: InquiryStatus
    description: Inquiry status.
    example: DN
    type: string
    enum:
      - RI
      - SN
      - DN
      - DND
      - CI
  inquiryStatus1:
    title: inquiryStatus1
    type: string
    enum:
      - RI
      - SN
      - DN
      - NDN
      - CI
  Operation:
    title: Operation
    description: Employment verification operation.
    example: request
    type: string
    enum:
      - request
      - consumption
  Pensiontype:
    title: Pensiontype
    description: Type of pension.
    example: BASE
    type: string
    enum:
      - BASE
      - LISTA DE RAYA
  Type:
    title: Type
    description: Clinic type.
    example: CAF
    type: string
    enum:
      - CMF
      - CH
      - CAF
  TypeBeneficiary:
    title: TypeBeneficiary
    example: TRABAJADOR
    type: string
    enum:
      - TRABAJADOR
      - PENSIONISTA
  WorkStatus:
    title: WorkStatus
    description: Work status.
    type: string
    enum:
      - W
      - NW
  AccessMedicalService:
    title: AccessMedicalService
    description: Work status.
    type: string
    enum:
      - Y
      - N
  AffiliationStatus:
    title: AffiliationStatus
    example: INACTIVO
    type: string
    enum:
      - ACTIVO
      - INACTIVO
  AddressDetail:
    title: AddressDetail
    type: object
    properties:
      street:
        description: Address street.
        example: PRIVADA DE ITALIA
        type: string
      outdoorNumber:
        description: Outdoor number of Address.
        example: '20'
        type: string
      interiorNumber:
        description: Interior number of Address.
        type: string
      settlement:
        description: Settlement.
        example: LA LUZ
        type: string
      delegationMunicipality:
        description: Delegation or municipality of Address.
        example: CUAUTITLAN IZCALLI
        type: string
      state:
        description: State of Address.
        example: MEXICO
        type: string
      postalCode:
        description: Postal Code of Address.
        example: '54716'
        type: string
  ClinicDetail:
    title: ClinicDetail
    type: object
    properties:
      key:
        description: Clinic key.
        example: '1521600'
        type: string
      type:
        type: object
        allOf:
          - $ref: '#/definitions/Type'
          - description: Clinic type.
            example: CAF
      name:
        description: Name of clinic.
        example: CUAUTITLAN IZCALLI
        type: string
      address:
        description: Address of clinic.
        example: CALLE DE LOS OCEANOS Nº 3, ATLANTA
        type: string
      isssteDelegation:
        description: ISSSTE clinic delegation.
        example: DELEGACION ESTATAL EN EL ESTADO DE MEXICO
        type: string
  LaborDataDetail:
    title: LaborDataDetail
    type: object
    properties:
      branch:
        description: Dependency Branch.
        example: COMISION NACIONAL DEL AGUA (CONAGUA)
        type: string
      payment:
        description: Dependency Payment.
        example: (CONAGUA)
        type: string
      pensiontype:
        type: object
        allOf:
          - $ref: '#/definitions/Pensiontype'
          - description: Type of pension.
            example: BASE
      startDate:
        description: Date of discharge in the Dependency. Format yyyy-mm-dd
        type: string
        format: date
      quotedBaseSalary:
        description: Person’s last salary subject of tax contribution. In cents
        type: integer
        format: int32
      totalRemuneration:
        description: Person’s last salary subject of tax contribution. In cents
        type: integer
        format: int32
      modality:
        description: Service modality
        type: string
  PrivacyNotice:
    description: 'The privacy notice the Customer must accept.'
    type: 'object'
    required:
      - 'fullName'
      - 'acceptanceDate'
      - 'acceptance'
      - 'address'
    properties:
      fullName:
        $ref: '#/definitions/FullName'
      address:
        $ref: '#/definitions/Address'
      acceptanceDate:
        type: 'string'
        format: 'date-time'
        description: 'Date and time of the privacy notice acceptance. As defined by date-time - RFC3339.'
        example: '2020-04-12T22:20:50.52Z'
      acceptance:
        type: 'string'
        description: 'Y if the Customer has accepted the privacy notice otherwise these field must be N.'
        minLength: 1
        maxLength: 1
        enum:
          - 'Y'
          - 'N'
  FullName:
    type: 'object'
    required:
      - 'firstName'
      - 'firstSurname'
      - 'secondSurname'
    properties:
      firstName:
        type: 'string'
        description: 'Firstname (Nombre).'
        minLength: 0
        maxLength: 50
        example: 'ROBERTO'
      middleName:
        type: 'string'
        description: 'Middlename (segundo nombre).'
        minLength: 0
        maxLength: 50
      firstSurname:
        type: 'string'
        description: 'First surname (apellido paterno).'
        minLength: 0
        maxLength: 30
        example: 'SAHAGUN'
      secondSurname:
        type: 'string'
        description: 'Second surname (apellido materno).'
        minLength: 0
        maxLength: 30
        example: 'ZARAGOZA'
      aditionalSurname:
        type: 'string'
        description: 'Additional surname (apellido adicional)'
        minLength: 0
        maxLength: 30
  Address:
    type: 'object'
    description: 'Customer address.'
    required:
      - 'streetAndNumber'
      - 'city'
      - 'postalCode'
      - 'state'
      - 'county'
      - 'settlement'
    properties:
      streetAndNumber:
        type: 'string'
        description: 'Street name and street number (calle y número).'
        minLength: 0
        maxLength: 85
        example: 'HIDALGO 32'
      settlement:
        type: 'string'
        description: 'Settlement (colonia).'
        minLength: 0
        maxLength: 65
        example: 'CENTRO'
      county:
        type: 'string'
        description: 'County (municipio).'
        minLength: 0
        maxLength: 65
        example: 'LA BARCA'
      city:
        type: 'string'
        description: 'City (ciudad).'
        minLength: 0
        maxLength: 65
        example: 'BENITO JUAREZ'
      state:
        $ref: '#/definitions/StateCatalog'
      postalCode:
        type: 'string'
        description: 'Postal code (código postal).'
        minLength: 5
        maxLength: 5
        example: '47917'
  StateCatalog:
    type: 'string'
    description: 'State (Estado)<table><thead><tr><th>Identifier</th><th>Name</th></tr></thead><tbody><tr><td>AGS</td><td>AGUASCALIENTES</td></tr><tr><td>BC</td><td>BAJA CALIFORNIA NORTE</td></tr><tr><td>BCS</td><td>BAJA CALIFORNIA SUR</td></tr><tr><td>CAMP</td><td>CAMPECHE</td></tr><tr><td>CDMX</td><td>CIUDAD DE MÉXICO</td></tr><tr><td>CHIS</td><td>CHIAPAS</td></tr><tr><td>CHIH</td><td>CHIHUAHUA</td></tr><tr><td>COAH</td><td>COHAHUILA</td></tr><tr><td>COL</td><td>COLIMA</td></tr><tr><td>DF</td><td>DISTRITO FEDERAL</td></tr><tr><td>DGO</td><td>DURANGO</td></tr><tr><td>GTO</td><td>GUANAJUATO</td></tr><tr><td>GRO</td><td>GUERRERO</td></tr><tr><td>HGO</td><td>HIDALGO</td></tr><tr><td>JAL</td><td>JALISCO</td></tr><tr><td>MEX</td><td>MÉXICO</td></tr><tr><td>MICH</td><td>MICHOCÁN</td></tr><tr><td>MOR</td><td>MORELOS</td></tr><tr><td>NAY</td><td>NAYARIT</td></tr><tr><td>NL</td><td>NUEVO LEÓN</td></tr><tr><td>OAX</td><td>OXACA</td></tr><tr><td>PUE</td><td>PUEBLA</td></tr><tr><td>QRO</td><td>QUERÉTARO</td></tr><tr><td>QROO</td><td>QUINTANA ROO</td></tr><tr><td>SLP</td><td>SAN LUIS POTOSÍ</td></tr><tr><td>SIN</td><td>SINALOA</td></tr><tr><td>SON</td><td>SONORA</td></tr><tr><td>TAB</td><td>TABASCO</td></tr><tr><td>TAMP</td><td>TAMAULIPAS</td></tr><tr><td>TLAX</td><td>TLAXCALA</td></tr><tr><td>VER</td><td>VERACRUZ</td></tr><tr><td>YUC</td><td>YUCATÁN</td></tr><tr><td>ZAC</td><td>ZACATECAS</td></tr></tbody></table>'
    minLength: 0
    maxLength: 4
    example: 'JAL'
    enum:
      - 'AGS'
      - 'BC'
      - 'BCS'
      - 'CAMP'
      - 'COAH'
      - 'COL'
      - 'CHIS'
      - 'CHIH'
      - 'DF'
      - 'CDMX'
      - 'DGO'
      - 'GTO'
      - 'GRO'
      - 'HGO'
      - 'JAL'
      - 'MEX'
      - 'MICH'
      - 'MOR'
      - 'NAY'
      - 'NL'
      - 'OAX'
      - 'PUE'
      - 'QRO'
      - 'QROO'
      - 'SLP'
      - 'SIN'
      - 'SON'
      - 'TAB'
      - 'TAMP'
      - 'TLAX'
      - 'VER'
      - 'YUC'
      - 'ZAC'
  EmploymentVerificationWithPrivacyNotice:
    description: 'Employment verification information. It must include the the privacy notice customer acceptance.'
    type: 'object'
    required:
      - 'privacyNotice'
      - 'employmentVerification'
    properties:
      privacyNotice:
        $ref: '#/definitions/PrivacyNotice'
      employmentVerification:
        $ref: '#/definitions/EmploymentVerification'
  EmploymentVerificationId:
    description: 'Identifier of the employment verification process.'
    type: 'object'
    properties:
      employmentVerificationRequestId:
        type: 'string'
        format: 'uuid'
        minLength: 36
        maxLength: 36
        description: 'The identifier of the employment verification request given by the API consumer (UUID).'
        example: '391d151f-1cac-44e7-a05b-79a1199621d6'
      subscriptionId:
        type: 'string'
        format: 'uuid'
        minLength: 36
        maxLength: 36
        description: 'The API Hub event subscription identifier (UUID).'
        example: '7c8a0230-36e0-43f4-9b7a-581dc55ea9c3'
      inquiryId:
        type: 'string'
        format: 'uuid'
        minLength: 36
        maxLength: 36
        description: 'The employment verification process identifier given by Círculo de Crédito.'
        example: 'a19fb6b8-2677-44f2-9cd7-3b2f78bb6f8c'
        readOnly: true
  EmploymentVerification:
    description: 'Employment verification information'
    type: 'object'
    allOf:
      - $ref: '#/definitions/EmploymentVerificationId'
    required:
      - 'employmentVerificationRequestId'
      - 'subscriptionId'
      - 'curp'
      - 'email'
    properties:
      curp:
        type: 'string'
        minLength: 18
        maxLength: 18
        description: 'CURP (loan/credit applicant MX Id).'
        example: 'BADD110313HCMLNS09'
      nss:
        description: 'Social Security Number for its initials in Spanish (NSS)'
        type: 'string'
        minLength: 11
        maxLength: 11
        example: '92919084431'
      email:
        type: 'string'
        minLength: 3
        maxLength: 80
        description: 'email'
        example: 'api@circulodecredito.com.mx'
        format: 'email'
      inquiryStatus:
        type: 'string'
        description: 'Inquiry status.'
        enum: ["RI", "SN", "DN", "DND", "CI"]
        example: 'DN'
        readOnly: true
      successCheck:
        description: 'It is true if the employment verification process ended successfully.'
        type: 'boolean'
        example: true
        readOnly: true
      dataProvider:
        description: The employment verification process identifier given by Círculo de Crédito.
        example: ISS
        type: string
        minLength: 3
        maxLength: 3
  EmploymentVerifications:
    description: 'A list of employment verification processes.'
    type: 'array'
    items:
      $ref: '#/definitions/EmploymentVerification'
  EmploymentVerificationMetadata:
    description: 'Metadata (paging information) of the list of employment verification processes.'
    type: 'object'
    properties:
      _metadata:
        $ref: '#/definitions/Metadata'
      inquiries:
        $ref: '#/definitions/EmploymentVerifications'
  CatalogIndustry:
    description: '<table style="width:100%;"><thead><tr><th>Industry                                        </th></tr></thead><tbody><tr><td>GOVERNMENT</td></tr><tr><td>AGROPECUARY</td></tr><tr><td>WHOLESALE</td></tr><tr><td>RETAIL</td></tr><tr><td>CONSTRUCTION</td></tr><tr><td>MEDIA</td></tr><tr><td>MINERY</td></tr><tr><td>MANUFACTURING</td></tr><tr><td>ENERGY</td></tr><tr><td>OTHER NON GOVERNMENTAL SERVICES</td></tr><tr><td>HOSPITALITY</td></tr><tr><td>RESTAURANTS</td></tr><tr><td>CULTURE & LEISURE</td></tr><tr><td>HEALTH</td></tr><tr><td>EDUCATION</td></tr><tr><td>FINANCIAL SERVICES</td></tr><tr><td>REAL ESTATE</td></tr><tr style="width:100%;"><td>PROFESSIONAL, SCIENTIFIC & TECHNICAL SERVICES</td></tr><tr><td>CARGO</td></tr><tr><td>TRANSPORT</td></tr></tbody></table>'
    example: 'GOVERNMENT'
    enum:
      - 'GOVERNMENT'
      - 'AGROPECUARY'
      - 'WHOLESALE'
      - 'RETAIL'
      - 'CONSTRUCTION'
      - 'MEDIA'
      - 'MINERY'
      - 'MANUFACTURING'
      - 'ENERGY'
      - 'OTHER NON GOVERNMENTAL SERVICES'
      - 'HOSPITALITY'
      - 'RESTAURANTS'
      - 'CULTURE & LEISURE'
      - 'HEALTH'
      - 'EDUCATION'
      - 'FINANCIAL SERVICES'
      - 'REAL ESTATE'
      - 'PROFESSIONAL, SCIENTIFIC & TECHNICAL SERVICES'
      - 'CARGO'
      - 'TRANSPORT'
  SuccessEVConsumption:
    description: 'Information about a successful employment verification process.'
    type: 'object'
    properties:
      request:
        $ref: '#/definitions/EmploymentVerification'
      names:
        description: 'Concatenation of firstname and surname.'
        type: 'string'
        example: 'VICENTE RAMON GUERRERO SALDAÑA'
        readOnly: true
      birthday:
        description: 'Birthday. As defined by full-date RFC3339.'
        type: 'string'
        format: 'date'
        readOnly: true
        example: '1829-04-01'
      workStatus:
        description: 'Work status.'
        type: 'string'
        enum: ['W', 'NW']
        readOnly: true
      validUntil:
        description: 'Date until the worker will have protection from, and contributions to, social security. If date is 3000-01-01 or null, the person is currently working. As defined by full-date RFC3339.'
        type: 'string'
        format: 'date'
        readOnly: true
        example: '1829-04-01'
      industry:
        $ref: '#/definitions/CatalogIndustry'
      industryRiskSegment:
        description: 'Industry Risk Segment.<p><table><thead><tr><th>Value</th><th>Description</th></tr></thead><tbody><tr><td>H</td><td>High</td></tr><tr><td>M</td><td>Medium</td></tr><tr><td>L</td><td>Low</td></tr></tbody></table></p>'
        type: 'string'
        enum: ['H', 'M', 'L']
        example: 'M'
        readOnly: true
      nssCheck:
        description: 'True if the nss field sent in the request is the same one that we obtained through the employment verification process.'
        type: 'boolean'
        readOnly: true
        example: true
  FailureEVConsumption:
    description: 'Information about a failed employment verification process.'
    type: 'object'
    properties:
      request:
        $ref: '#/definitions/EmploymentVerification'
      errors:
        description: 'List of errors.'
        type: 'array'
        items:
          $ref: '#/definitions/Error'
  AckEmploymentVerification:
    properties:
      acknowledgeId:
        type: 'string'
        format: 'uuid'
        minLength: 36
        maxLength: 36
        description: 'Ackknowledge identifier (UUID).'
        readOnly: true
        example: '627aa72a-c799-4abf-b98e-0c4838af9bd5'
      dateTime:
        type: 'string'
        format: 'date-time'
        readOnly: true
        description: 'Date and time of the acknowledge. As defined by date-time - RFC3339.'
        example: '2020-04-12T22:20:50.52Z'
      operation:
        description: 'Employment verification operation.'
        type: 'string'
        enum:
          - 'request'
          - 'consumption'
        readOnly: true
        example: 'request'
      message:
        type: 'string'
        maxLength: 120
        description: 'Descriptive and human-readable message.'
        readOnly: true
        example: 'The employment verification request has been received.'
  AckSuccessEVConsumption:
    description: 'Acknowledge of a successful employment verification process.'
    type: 'object'
    allOf:
      - $ref: '#/definitions/AckEmploymentVerification'
    properties:
      employmentVerification:
        $ref: '#/definitions/SuccessEVConsumption'
  AckFailureEVConsumption:
    description: 'Acknowledge of an unsuccessful employment verification process.'
    type: 'object'
    allOf:
      - $ref: '#/definitions/AckEmploymentVerification'
    properties:
      employmentVerification:
        $ref: '#/definitions/FailureEVConsumption'
  AckEVRequest:
    description: 'Acknowledge of an employment verification process.'
    type: 'object'
    allOf:
      - $ref: '#/definitions/AckEmploymentVerification'
      - $ref: '#/definitions/EmploymentVerificationId'
  Error:
    type: 'object'
    description: 'Error'
    readOnly: true
    properties:
      code:
        type: 'string'
        description: 'Error code.'
        example: '400'
      message:
        type: 'string'
        maxLength: 120
        description: 'Descriptive and human-readable error message.'
        example: 'External data source not available.'
  Errors:
    description: 'A list of errors.'
    type: 'object'
    properties:
      errors:
        description: 'List of errors.'
        type: 'array'
        items:
          $ref: '#/definitions/Error'
  Metadata:
    description: 'Pagination information.'
    type: 'object'
    properties:
      page:
        type: 'integer'
        description: 'Current page.'
        readOnly: true
        example: 7
      perPage:
        type: 'integer'
        description: 'Rows per page.'
        readOnly: true
        example: 15
      pageCount:
        type: 'integer'
        description: 'Total number of pages.'
        readOnly: true
        example: 12
      totalCount:
        type: 'integer'
        description: 'Total number of rows.'
        readOnly: true
        example: 175
      links:
        $ref: '#/definitions/Links'
  Links:
    description: 'Pagination information.'
    type: 'object'
    properties:
      self:
        description: 'URL of this page.'
        type: 'string'
        readOnly: true
        example: 'https://services.circulodecredito.com.mx/sandbox/v1/eva/employmentverifications?page=7&perPage=15'
      first:
        description: 'URL of the first page.'
        type: 'string'
        readOnly: true
        example: 'https://services.circulodecredito.com.mx/sandbox/v1/eva/employmentverifications?page=1&perPage=15'
      previous:
        description: 'URL of the previous page.'
        type: 'string'
        readOnly: true
        example: 'https://services.circulodecredito.com.mx/sandbox/v1/eva/employmentverifications?page=6&perPage=15'
      next:
        description: 'URL of the next page.'
        type: 'string'
        readOnly: true
        example: 'https://services.circulodecredito.com.mx/sandbox/v1/eva/employmentverifications?page=8&perPage=15'
      last:
        description: 'URL of the last page.'
        type: 'string'
        readOnly: true
        example: 'https://services.circulodecredito.com.mx/sandbox/v1/eva/employmentverifications?page=12&perPage=15'
