Visa Developer Community

Highlighted
Regular Visitor

Swagger Schema for Card On File api

Hi, is there any swagger schema for Card On File api?

 

Thanks

 

2 REPLIES
Community Scholar

Re: Swagger Schema for Card On File api

Hi @JackLiu,

Here's the swagger schema for the Card-on-File API that you were asking about. I copy and pasted it to the post instead of attaching it. Please see below.

 

Thanks,

Diana

 

 

{
 "swagger": "2.0",
 "info": {
  "title": "COF",
  "description": "COF allows digital control capabilities in Issuer’s online mobile application or web application to provide visibility to the consumers where their card (PAN)/token credentials are stored to initiate COF/e-commerce transactions and where the credentials are updated in case of a card reissuance or token status updates",
  "version": "0.0.1"
 },
 "host": "sandbox.api.visa.com",
 "basePath": "/",
 "x-description": "API Description for COF enabled through the Visa Developer Platform",
 "paths": {
  "/cof/v1/cofissuerservice": {
   "post": {
    "summary": "COF Service",
    "produces": ["application/json"],
    "description": "COF allows to enable digital control capabilities in Issuer’s online mobile application or web application to provide visibility to the consumers where their card (PAN)/token credentials are stored to initiate COF/e-commerce transactions and where the credentials are updated in case of a card reissuance or token status updates etc.",
    "operationId": "cofInquiry",
    "parameters": [{
     "name": "cofService",
     "in": "body",
     "description": "COF Service Request",
     "required": true,
     "schema": {
      "type": "object",
      "properties": {
       "COFServiceRequest": {
        "$ref": "#/definitions/COFServiceRequest"
       }
      }
     }
    }],
    "responses": {
     "200": {
      "description": "OK",
      "schema": {
       "$ref": "#/definitions/COFServiceResponse"
      },
      "examples": {
       "application/json": {
        "responseHeader": {
         "messageDateTime": "2015-11-04 21:00:11.020",
         "requestMessageId": "requestmessage001",
         "responseMessageId": "83COF2262420161208180404947",
         "numRecordsReturned": "1"
        },
        "responseData": {
         "group": "STANDARD",
         "pANList": [{
          "pANData": {
           "pANResponseMsg ": "Success",
           "pAN": "4000001234567890",
           "merchants": [{
            "acctNumOld4Digit": "7890",
            "mCC": "1234",
            "merchantName": "ABC",
            "tokenRequestorID": "1234",
            "totalTranCount": "1",
            "lastMrchTranDt": "11-25-2017",
            "vAUUpdateStatus": "Y",
            "vAULastUpdateDate": "2016-01-01",
            "tokenPANReplacementStatus": "N",
            "tokenPANReplacementDate": ""

           },
           {
            "acctNumOld4Digit": "7881",
            "mCC": "1234",
            "merchantName": "DEF",
            "tokenRequestorID": "1234",
            "totalTranCount": "6",
            "lastMrchTranDt": "01-05-2017",
            "vAUUpdateStatus": "N",
            "vAULastUpdateDate": "",
            "tokenPANReplacementStatus": "Y",
            "tokenPANReplacementDate": "2016-01-01"
           }]
          }
         }]
        },
        "status": {
         "statusCode": "CDI000",
         "statusDescription": "COF Service - Success"
        }
       }
      }
     },
     "500": {
      "description": "Internal service failure"
     }
    },
    "x-name": "COF Service Using POST",
    "x-notes": "Notes for COF Service endpoint",
    "x-samplePayload": {
     "requestHeader": {
      "messageDateTime": "2016-01-15T01:02:31.327",
      "requestMessageId": "6da60e1b8b024532a2e0eacb1af58581"
     },
     "requestData": {
      "group": " STANDARD ",
      "pAN": ["1234567891234567"]
     }
    },
    "x-samplePayloadXML": ""
   },
   "x-internalUri": "/test/cofissuerapi",
   "x-name": "COF Service",
   "x-tags": [],
   "x-slug": "test_service",
   "x-description": "This is a description for COF Service API endpoint"
  }
 },
 "definitions": {
  "COFServiceRequest": {
   "required": ["requestHeader",
   "requestData"],
   "properties": {
    "requestHeader": {
     "$ref": "#/definitions/requestHeader"
    },
    "requestData": {
     "$ref": "#/definitions/requestData"
    }
   }
  },
  "requestHeader": {
   "required": ["messageDateTime",
   "requestMessageId"],
   "properties": {
    "messageDateTime": {
     "description": "Date and time at which request is sent (up to milliseconds in UTC). Ex 2008-09-19T0000-00-000",
     "type": "string",
     "maxLength": 23,
     "format": "yyyy-MM-ddTHH:mm:ss.SSS"
    },
    "requestMessageId": {
     "description": "A string which uniquely identifies the service request. Requesting application need to create this unique message Id",
     "type": "string",
     "maxLength": 50
    }
   }
  },
  "requestData": {
   "required": ["group",
   "pANs"],
   "properties": {
    "group": {
     "type": "string",
     "description": "Grouping of response fields a client is entitled to"
    },
    "pANs": {
     "type": "array",
     "items": {
      "type": "string"
     },
     "description": "list of PANs"
    }
   }
  },
  "COFServiceResponse": {
   "properties": {
    "responseHeader": {
     "$ref": "#/definitions/responseHeader"
    },
    "responseData": {
     "$ref": "#/definitions/responseData"
    },
    "status": {
     "$ref": "#/definitions/status"
    }
   }
  },
  "responseHeader": {
   "properties": {
    "numRecordsReturned": {
     "type": "integer",
     "format": "int32",
     "description": "Number of records returned. Note: Matched records may differ from returned records if Max Records is defined or system limit is exceeded"
    },
    "requestMessageId": {
     "type": "string",
     "description": "A string uniquely identifies the service request. Response will contain same Message Id as received from requesting application"
    },
    "messageDateTime": {
     "description": "Date and time at which request is sent (up to milliseconds in UTC). Ex 2008-09-19T0000-00-000",
     "type": "string",
     "maxLength": 23,
     "format": "yyyy-MM-dd HH:mm:ss.SSS"
    },
    "responseMessageId": {
     "type": "string",
     "description": "A combination of Service Id, Application Id, an Integer and current Timestamp that uniquely identifies the current request-response processing"
    }
   }
  },
  "status": {
   "properties": {
    "statusDescription": {
     "type": "string",
     "description": "A description of the Status Code. A brief description indicating the result of the Service Request"
    },
    "statusCode": {
     "type": "string",
     "description": "Status Code of the Service Request"
    }
   }
  },
  "responseData": {
   "properties": {
    "group": {
     "type": "string",
     "description": "Grouping of response fields a client is entitled to"
    },
    "pANList": {
     "type": "array",
     "items": {
      "$ref": "#/definitions/panData"
     },
     "description": "An array of response objects for each PAN"
    }
   }
  },
  "panData": {
   "properties": {
    "pAN": {
     "type": "string",
     "description": "account number"
    },
    "panResponseMsg": {
     "type": "string",
     "description": "string representing success or failure for the particular PAN"
    },
    "merchants": {
     "type": "array",
     "items": {
      "$ref": "#/definitions/merchants"
     }
    }
   }
  },
  "merchants": {
   "properties": {
    "acctNumOld4Digit": {
     "type": "string",
     "format": "[0-9]{4}",
     "description": "Old Account Number's last 4 digit"
    },
    "mCC": {
     "type": "string",
     "format": "[0-9]{4}",
     "description": "Merchant Category Code"
    },
    "merchantName": {
     "type": "string",
     "description": "Cleansed Merchant Name"
    },
    "tokenRequestorID": {
     "type": "string",
     "description": "Token Requestor ID"
    },
    "totalTranCount": {
     "type": "string",
     "description": "Total Transaction Count"
    },
    "lastMrchTranDt": {
     "type": "string",
     "format": "date",
     "description": "Date when transaction was made with the merchant"
    },
    "vAUUpdateStatus": {
     "type": "boolean",
     "description": "VAU Update Status, Y: The record find a match in VAU, N: Record Does not find a match in VAU"
    },
    "vAULastUpdateDate": {
     "type": "string",
     "format": "date",
     "description": "Update date when VAU updated the merchant with new PAN data"
    },
    "tokenPANReplacementStatus": {
     "type": "boolean",
     "description": "tokenPANReplacement Update Status, Y: The record find a match, N: Record Does not find a match"
    },
    "tokenPANReplacementDate": {
     "type": "string",
     "format": "date",
     "description": "tokenPANReplacement Update date"
    }
    
   }
  }
 },
 "x-authMethod": ["esi_client_cert"],
 "x-releaseDate": "TBD",
 "x-deprecationDate": "TBD",
 "x-internalUri": "/testcofserviceapi"
}

 

 

                             

 

Thanks,
Diana

Regular Visitor

Re: Swagger Schema for Card On File api

Really appreciate it, Diana.