PPP Loan APIs - API Dictionary

Table of Contents

This document gives an overview for the API’s that are exposed by the PPP Loan portal.

Pre-requisites:

Authorization: All the API’s require Authorization parameters that are needed to be passed in each of the API request. Please refer to the API Pre-requisites section on Home page.

Important: All API end points must match API dictionary format, for instance having “/” at the end of the URL request for POST & DELETE API requests.

Environment: All the PPP API’s are exposed in the Sandbox and Production environment

Environment URL
Sandbox https://sandbox.forgiveness.sba.gov/
Production https://forgiveness.sba.gov/

1. Submit PPP Loan Request

This API is used by lenders to submit PPP loan request to SBA

Note - If field is optional and user does not have a valid value for that field, those fields may be omitted in JSON input

Please note:
A. Project Address that may be used in the vendors application should be mapped to Business Address. The SBA is not allowing PO Boxes for this business address.
B. The SBA is allowing PO Boxes to be sent for Principal addresses.
C. CLS User – The SBA PPP Platform handles the routing and booking based on Lender Location ID that is associated with your Lending institution within the Platform. This
Lender Location ID is available in the platform.
D. ETRAN uses processing methods to outline how you book loans into the system. ETRAN will leverage two processing methods for this new round of PPP. You do not have to pass us these processing methods, as they will automatically be set based on the value you are passing True/False to the Second Draw API indicator.
D. EIDL loans are only for the first round and will be mapped automatically into the Use of Proceeds.

Request type: HTTPS

API Endpoint:

POST /api/origination/

Request (Sample Body)


{
    "business": {
        "owners": [
            {
                "business_name": "ABC Corp",
                "owner_type": 2,
                "first_name": "James",
                "last_name": "Marshall",
                "title": "Director",
                "business_type": 2,
                "ownership_percentage": 25,
                "tin": "252751625",
                "tin_type": 0,
                "address_line_1": "123 Second St",
                "address_line_2": "",
                "city": "Manhattan",
                "state": "NY",
                "zip_code": "10004",
                "zip_code_plus4": "1234",
                "position": "Director",
                "veteran_status": "1",
                "gender": "M",
                "ethnicity": "N",
                "race": [
                    "1",
                    "2"
                ]
            }
        ],
        "naics_code": "722513",
        "business_type": 2,
        "dba_tradename": "ABC Corp",
	"legal_name": "ABC Corp",
	"first_name": "James",
        "last_name": "Marshall",
        "address_line_1": "5050 Ritter Rd",
        "address_line_2": "Suite B",
        "city": "Mechanicsburg",
        "state": "PA",
        "zip_code": "17055",
        "zip_code_plus4": "1234",
        "tin": "835881068",
        "tin_type": 0,
        "phone_number": "5482562187",
        "primary_contact": "James",
        "primary_contact_email": "user@example.com",
        "is_franchise": true,
	"is_sba_listed_franchise": true,
        "franchise_code": "S2956",
        "date_of_establishment": "2019-01-01"
    },
    "average_monthly_payroll": 1000,
    "loan_amount": 2500,
    "refinance_of_eidl_amount": 0,
    "refinance_of_eidl_loan_number": "string",
    "number_of_employees": 1,
    "period_1_quarter": "1",
    "period_1_revenue": 0,
    "period_2_quarter": "1",
    "period_2_revenue": 0,
    "purpose_of_loan_payroll": true,
    "purpose_of_loan_mortgage": false,
    "purpose_of_loan_utilities": false,
    "purpose_of_loan_covered_operations_expenditures": false,
    "purpose_of_loan_covered_property_damage": false,
    "purpose_of_loan_covered_supplier_costs": false,
    "purpose_of_loan_covered_worker_protection_expenditure": false,
    "purpose_of_loan_other": false,
    "purpose_of_loan_other_info": "",
    "ineligible_general": true,
    "ineligible_bad_loan": true,
    "ineligible_criminal_charges": true,
    "ineligible_felony": true,
    "applicant_is_eligible": true,
    "applicant_meets_revenue_test_and_size_standard": true,
    "applicant_no_shuttered_venue_grant": true,
    "applicant_has_reduction_in_gross_receipts": true,
    "applicant_wont_receive_another_second_draw": true,
    "applicant_meets_size_standard": 1,
    "lender_contracted_third_party": true,
    "loan_request_is_necessary": true,
    "has_other_businesses": true,
    "received_eidl": false,
    "all_employees_residency": true,
    "second_draw_ppp_loan": false,
    "ppp_first_draw_sba_loan_number": 0,
    "ppp_first_draw_loan_amount": 0,
    "lender_application_number": "12345"
    "schedule_c_2483_form": true,
    "schedule_c_tax_year": "2019",
    "schedule_c_gross_income": 20000.00
}

Request Parameters

Optional and Conditional parameters should not be included when null.

Parameter Name Data Type Mandatory/Optional/Conditional Sample Value Description
business JSON Object Mandatory    
owners JSON Array Mandatory    
business_name String Conditional ABC Corp Owner - Business name (if owner is a business). Include only if owner_type is 2. Max 80 characters allowed
first_name String Conditional James Owner - first name, Include only if owner_type is 1. Max 40 characters allowed
last_name String Conditional Marshall Owner - last name, Include only if owner_type is 1. Max 40 characters allowed
business_type number Conditional 2 Owner - Business type if owner is a Business i.e. Conditional for Owners Array with owner_type=2, possible values: SOLE_PROPRIETOR = 1, PARTNERSHIP = 2, C_CORP = 3, LLC = 4, JOINT_VENTURE = 5, PROFESSIONAL_ASSOCIATION = 6, TRUST = 7, COOPERATIVE = 8, LLP = 9, S_CORP = 10, NPO or Non-Profit Organization (Other 501(c)) = 11, TENANT_IN_COMMON = 12, ESOP = 13, NONPROFIT_CHILD_CARE = 14, ROBS = 15, ELIG_SELF_EMPLOYED = 16, INDEPENDENT_CONTRACTOR = 17, NONPROFIT_C_3_ORGANIZTION = 21, NONPROFIT_C_6_ORGANIZTION = 22, VETERANS_ORG = 23, TRIBAL = 24, HOUSING_COOPERATIVE = 25, SINGLE_MEMBER_LLC = 26, QUALIFIED_JOINT_VENTURE (spouses) = 27
title String Optional Director Owner - Title of Owner, max 80 characters allowed
owner_type Number Mandatory 2 Owner - Whether owner is an individual or business. PERSON = 1 BUSINESS = 2
ownership_percentage Number Mandatory 25 Owner - % ownership of owner. Valid Values from 1 to 100 and no more than 3 digits, The SBA requires that the Owners percent is at least 1%. In some scenerios where there is no owner with 1%, you will still need to submit a princpal with 1%. There is no current workaround.The SBA has finalized the ownership/principal requirement to enforce an aggregate 20% submission level for all principals combined. The system will still honor the current value of 1% (for each individual principal) – but the aggregate of those entered – must be 20%. Said differently – a single 1% principal will not be allowed via the UI or API – you must submit an achieved total of 20%. See FAQ # 19
tin String Mandatory 252751625 Owner - Owner’s EIN or SNN with no spaces or dashes SSN’s. See FAQ for the REG EX used in validation
tin_type Number Mandatory 0 Owner - EIN = 0 , SSN = 1, ITIN = 4 Owner’s TIN Type. It is conditional on Business Type. See Business Owner Matrix
address_line_1 String Mandatory 123 Second St Owner - Street Address of owner. If owner resides outside US, use thier US or Business address. Max 80 characters allowed
address_line_2 String Optional   Owner - Optional Address Info of owner. If owner resides outside US, use thier US or Business address. Max 80 characters allowed
city String Mandatory Manhattan Owner - city of Owner’s address.City should validate with ZIP using USPS standard. If owner resides outside US, use thier US or Business address city. Max 40 characters allowed
state String Mandatory NY Owner - 2 Letter State Code of Owner’s address. If owner resides outside US, use thier US or Business state
zip_code String Mandatory 10004 Owner - 5 Digit Valid Zip. If owner resides outside US, use thier US or Business zip
zip_code_plus4 String Optional 1234 Owner - 4 Digit Zip+4. If owner resides outside US, use thier US or Business zip+4
position String Optional Director Owner - Postion as defined for demographics
veteran_status String Optional 1 Owner - 1=Non-Veteran; 2=Veteran; 3=Service-Disabled Veteran; 4=Spouse of Veteran; X=Not Disclosed
gender String Optional M Owner - M=Male; F=Female; X=Not Disclosed
ethnicity String Optional N Owner - H=Hispanic or Latino; N=Not Hispanic or Latino; X=Not Disclosed
race Array with Strings allowed Optional   Owner - 1=American Indian or Alaska Native; 2=Asian; 3=Black or African-American; 4=Native Hawaiian or Pacific Islander; 5=White; X=Not Disclosed
naics_code number Mandatory 722513 Borrower/Business - Valid 6 digit integer NAICS
business_type number Mandatory 2 Borrower/Business - Borrowwer’s Business type, mandatory in the business array: SOLE_PROPRIETOR = 1, PARTNERSHIP = 2, C_CORP = 3, LLC = 4, JOINT_VENTURE = 5, PROFESSIONAL_ASSOCIATION = 6, TRUST = 7, COOPERATIVE = 8, LLP = 9, S_CORP = 10, NPO or Non-Profit Organization (Other 501(c)) = 11, TENANT_IN_COMMON = 12, ESOP = 13, NONPROFIT_CHILD_CARE = 14, ROBS = 15, ELIG_SELF_EMPLOYED = 16, INDEPENDENT_CONTRACTOR = 17, NONPROFIT_C_3_ORGANIZTION = 21, NONPROFIT_C_6_ORGANIZTION = 22, VETERANS_ORG = 23, TRIBAL = 24, HOUSING_COOPERATIVE = 25, SINGLE_MEMBER_LLC = 26, QUALIFIED_JOINT_VENTURE (spouses) = 27 PLEASE NOTE: THERE IS NO “OTHER” TYPE
dba_tradename String Optional ABC Corp Borrower/Business - DBA name if known. Max 80 characters allowed
legal_name String Conditional ABC Corp Borrower/Business - Business name - Do not include for Business types 1,16,17,26,27. Max 80 characters allowed
first_name String Conditional John Borrower/Business - first name - include for Business types 1,16,17,26,27. Max 40 characters allowed
last_name String Conditional Mich Borrower/Business - last name - include for Business types 1,16,17,26,27. Max 40 characters allowed
address_line_1 String Mandatory 123 Fake Street Borrower/Business - Street Address, po box not allowed. Max 80 characters allowed
address_line_2 String Optional Suite B Borrower/Business - Additonal street info. Max 80 characters allowed
city String Mandatory Mechanicsburg Borrower/Business - City should validate with ZIP using USPS standard. Max 40 characters allowed
state String Mandatory PA Borrower/Busienss - 2 Letter State Code
zip_code String Mandatory 17055 Borrower/Business - Five Digit Zip
zip_code_plus4 String Optional 1234 Borrower/Business - 4 Digit Zip+4
tin String Mandatory 435881068 Borrower/Business - EIN or SSN
tin_type number Mandatory 0 Borrower/Business - EIN=0, SSN=1, ITIN=4
phone_number String Mandatory 5482562187 Borrower/Business - Phone Number without dashes or spaces
primary_contact String Mandatory James Borrower/Business - First Name and Last Name. Max 80 characters allowed
primary_contact_email String Mandatory user@example.com Borrower/Business - A Valid Email address. Max 80 characters allowed
is_franchise boolean Mandatory true Borrower/Business - True or False
is_sba_listed_franchise boolean conditional true Borrower/Business - Whether Franchise is listed with SBA
franchise_code String Conditional A12345 Borrower/Business - Valid SBA Franchise Code if if_franchise = true or is_sba_listed_franchise = true.For PPP Loan approval, SBA expects Franchise to be listed with them
date_of_establishment String Mandatory 2019-01-01 Operation should be on or before February 15, 2020. Even though 2483 expects year, API/Etran requires date of establishment with YYYY-MM-DY
average_monthly_payroll Number Mandatory 1000 Average Monthly Payroll. (If Applicant submitted SBA Form 2483-C, use the amount entered in B in either table, plus the amount entered in C for Applicants with employees (if applicable) or
If Applicant submitted SBA Form 2483-SD-C, use the amount entered in B in either table, plus the amount entered in C for Applicants with employees (if applicable)
loan_amount Number Mandatory 2500 If First draw - 2.5 x average monthly payroll + EIDL, Net of Advance (if Applicable) Equals Loan Request
If second draw 2.5 x average monthly payroll (or x 3.5 for NAICS 72 applicants) equals Loan Request Amount. (If Applicant submitted SBA Form 2483-C, use the amount entered in B in either table, plus the amount entered in C for Applicants with employees (if applicable), multiplied by 2.5; or
If Applicant submitted SBA Form 2483-SD-C, use the amount entered in B in either table, plus the amount entered in C for Applicants with employees (if applicable), multiplied by 2.5 (or multiplied by 3.5 for NAICS 72 applicants)
received_eidl boolean Optional true First Draw - True or False - required if and only if first draw PPP loan and if Borrower received EIDL loan between Jan 31st 2020 and April 03rd, 2020
refinance_of_eidl_amount Number Conditional 1000 First draw - EIDL Loan amount, if EIDL is TRUE. Only valid for first draw loans and in that case also it’s optional
refinance_of_eidl_loan_number String Conditional 1234567890 First draw - EIDL loan number, MUST be provided when Borrower is refinancing EIDL loan. Only valid for first draw loans and in that case also it’s optional, this is used to gather information in place of addendum B of form 2483.
number_of_employees Number Required 1 Number of Employees, minimun 1
if first draw must be 500 or less (or 300, if applicable) except if applicant_meets_size_standard of 2 or 3
second draw must be 300 or less (including affliates, if applicable) see FAQ regarding employees per period loan
period_1_quarter Number Optional 1 second draw only - Current Period - Required if second_draw_ppp_loan is true and loan amount > 150 k, valid values of 1 to 5 with 5 used for annual. See FAQ # 20
period_1_revenue Number Optional 3000 second draw only - Current period under review and should be < 76% of period 2 - Required if second_draw_ppp_loan is true and loan amount > 150 k
period_2_quarter Number Optional 1 second draw only - Prior Reference period under review - Required if second_draw_ppp_loan is true and loan amount > 150 k, valid values of 1 to 5 with 5 used for annual
period_2_revenue Number Optional 6000 second draw only - Prior/reference - Required if second_draw_ppp_loan is true and loan amount > 150 k
purpose_of_loan_payroll boolean Mandatory true true or false: See 2483 Form - Fields Mapping to API Elements
purpose_of_loan_mortgage boolean Mandatory false true or false: See 2483 Form - Fields Mapping to API Elements
purpose_of_loan_utilities boolean Mandatory false true or false: See 2483 Form - Fields Mapping to API Elements
purpose_of_loan_covered_operations_expenditures boolean Mandatory false true or false: See 2483 Form - Fields Mapping to API Elements
purpose_of_loan_covered_property_damage boolean Mandatory false true or false: See 2483 Form - Fields Mapping to API Elements
purpose_of_loan_covered_supplier_costs boolean Mandatory false true or false: See 2483 Form - Fields Mapping to API Elements
purpose_of_loan_covered_worker_protection_expenditure boolean Mandatory false true or false: See 2483 Form - Fields Mapping to API Elements
purpose_of_loan_other boolean Mandatory false true or false: See 2483 Form - Fields Mapping to API Elements
purpose_of_loan_other_info string Conditional Reason See 2483 Form - Fields Mapping to API Elements, Number of characters allowed for is restricted to 80 alphanumeric characters (non-alphanumeric characters are allowed but they count double).
ineligible_general boolean Mandatory true Must be TRUE for validation. False will cause rejection with Attestations not complete. The Applicant has certified to the Lender that neither the Applicant nor any owner is presently suspended, debarred, proposed for debarment, declared ineligible, voluntarily excluded from participation in this transaction by any Federal department or agency, or presently involved in any bankruptcy.
ineligible_bad_loan boolean Mandatory true Must be TRUE for validation. False will cause rejection with Attestations are not complete. The Applicant has certified to the Lender that neither the Applicant nor any of its owners, nor any business owned or controlled by any of them, ever obtained a direct or guaranteed loan from SBA or any other Federal agency that is (a) currently delinquent or (b) has defaulted in the last 7 years and caused a loss to the government.
ineligible_criminal_charges boolean Mandatory true Must be TRUE for validation. False will cause rejection with Attestations are not complete. “The Applicant has represented to the Lender that neither the Applicant (if an individual) nor any individual owning 20% or more of the equity of the Applicant is presently incarcerated or, for any felony, presently subject to an indictment, criminal information, arraignment, or other means by which formal criminal charges are brought in any jurisdiction.”
ineligible_felony boolean Mandatory true Must be TRUE for validation. False will cause rejection with Attestations are not complete.”“The Applicant has represented to the Lender that neither the Applicant (if an individual) nor any owner (as defined in the Applicant’s SBA Form 2483) of the Applicant has within the last 5 years, for any felony involving fraud, bribery, embezzlement, or a false statement in a loan application or an application for federal financial assistance, or within the last year for any other felony: 1) been convicted; 2) pleaded guilty; 3) pleaded nolo contendere; or 4) commenced any form of parole or probation (including probation before judgment).”
applicant_is_eligible boolean Mandatory true Must be TRUE for validation. False will cause rejection with Attestations are not complete. The Applicant has certified to the Lender that the Applicant is eligible under the Paycheck Protection Program Rules.Also When utilizing ITINs, the Lender has properly obtained and will retain documentation supporting the proper identification and ITIN use by the Borrower.
applicant_meets_revenue_test_and_size_standard boolean Mandatory true First & Second Draw Required: Must be TRUE for validation, False will cause rejection with Attestations are not complete. “Form 2484 Section E, Question 1 and 2.”. For First draw - The Applicant has certified to the Lender that the Applicant, together with its affiliates (if applicable), (1) is an independent contractor, eligible self-employed individual, or sole proprietor; (2) if not a housing cooperative, eligible 501(c)(6) organization, or eligible destination marketing organization, employs no more than the greater of 500 employees or, if applicable, meets the size standard in number of employees established by the SBA in 13 C.F.R. 121.201 for the Applicant’s industry; (3) if a housing cooperative, eligible 501(c)(6) organization, or eligible destination marketing organization, employs no more than 300 employees; (4) if NAICS 72, employs no more than 500 employees per physical location; (5) a news organization that is majority owned or controlled by a NAICS code 511110 or 5151 business or a nonprofit public broadcasting entity with a trade or business under NAICS code 511110 or 5151, that e mploys no more than 500 employees (or, if applicable, the size standard in number of employees established by SBA in 13 C.F.R. 121.201 for the Applicant’s industry) per location; or (6) is a small business under the applicable revenue-based size standard established by SBA in 13 C.F.R. 1201.201 for the Applicant’s industry or under the SBA alternative size standard.For second draw - The Applicant has certified to the Lender that the Applicant, together with its affiliates (if applicable), (1) is an independent contractor, eligible self-employed individual, or sole proprietor with no employees; (2) employs no more than 300 employees; or (3) if NAICS 72 or eligible news organization, employs no more than 300 employees per physical location. (Note - For 01/19 Launch, if you have this optional for second draw, platform will not cause failure if you don’t provide this and will default to true)
applicant_no_shuttered_venue_grant boolean Mandatory true Must be TRUE for validation. False will cause rejection with Attestations are not complete.”The Applicant has certified to the Lender that (1) it has not been approved for a Shuttered Venue Operator (SVO) grant from SBA as of the date of the loan application, and acknowledged that if the Applicant is approved for an SVO grant before SBA issues a loan number for the loan, the Applicant is ineligible for the loan and acceptance of any loan proceeds will be considered an unauthorized use.”
applicant_has_reduction_in_gross_receipts boolean Conditional true Second draw - Must be TRUE for validation. False will cause rejection with Attestations are not complete. “The Applicant has realized a reduction in gross receipts in excess of 25% relative to the relevant comparison time period. For loans greater than $150,000, Applicant has provided documentation to the lender substantiating the decline in gross receipts. For loans of $150,000 or less, Applicant will provide documentation substantiating the decline in gross receipts upon or before seeking loan forgiveness for the Second Draw Paycheck Protection Program Loan or upon SBA request.”
applicant_wont_receive_another_second_draw boolean Conditional true Second draw - Must be TRUE for validation. False will cause rejection with Attestations are not complete. “The Applicant has not and will not receive another Second Draw Paycheck Protection Program Loan.”
applicant_meets_size_standard Number Conditional 1 First draw only required - 1=No more than 500 (or 300 employees, if applicable), 2=SBA industry size - no validation on number_of_employees, 3 = SBA alternative size - no validation on number_of_employees.”The Applicant, together with its affiliates (if applicable), (1) is an independent contractor, self-employed individual, or sole proprietor with noemployees; (2) if not a housing cooperative, eligible 501(c)(6) organization, or eligible destination marketing organization, employs no more thanthe greater of 500 employees or, if applicable, the size standard in number of employees established by SBA in 13 C.F.R. 121.201 for the Applicant’s industry; (3) if a housing cooperative, eligible 501(c)(6) organization, or eligible destination marketing organization, employs no more than 300employees; (4) if NAICS 72, employs no more than 500 employees per physical location; (5) if a news organization that is majority owned orcontrolled by a NAICS code 511110 or 5151 business or a nonprofit public broadcasting entity with a trade or business under NAICS code 511110or 5151, employs no more than 500 employees (or, if applicable, the size standard in number of employees established by SBA in 13 C.F.R. 121.201 for the Applicant’s industry) per location; or (6) is a small business under the applicable revenue-based size standard established by SBA in 13C.F.R. 121.201 for the Applicant’s industry or under the SBA alternative size standard.”
lender_contracted_third_party Boolean Mandatory false true or false - “Has the Lender directly contracted with a third party to assist in the preparation of the loan application or application materials, or to perform other services in connection with this loan?”
loan_request_is_necessary boolean Mandatory true Must be TRUE for validation. False will cause rejection with Attestations are not complete. “The Applicant has certified to the Lender that the Applicant is eligible under the Paycheck Protection Program Rules.”
has_other_businesses boolean Mandatory true True or False, “Is the Applicant or any owner of the Applicant an owner of any other business, or have common management (including amanagement agreement) with any other business?”
all_employees_residency boolean Mandatory true True or False, Must be TRUE to submit. “The Applicant has certified that the principal place of residence for all employees included in the Applicant’s payroll calculation is the United States”
second_draw_ppp_loan boolean Mandatory false Is the loan second draw loan - True or False
ppp_first_draw_sba_loan_number number Optional 1234567890 Second draw - First draw sba loan number - Required for second draw PPP Loan
ppp_first_draw_loan_amount number Optional 2000.00 Second draw - First draw ppp loan request amount - Required for second draw PPP Loan
lender_application_number String Optional “12345” lender application number, this will be saved and passed through to eTran as lenderApplicNmb in the etran.xsd. Number of characters allowed for Lender application number restricted to 20 alphanumeric characters (non-alphanumeric characters are allowed but they count double).
schedule_c_2483_form Boolean Optional false Depicts whether Borrower is using any of the 2483 Schedule C forms. Allowed only for borrower business types of 1,16,17,26,27
schedule_c_tax_year String Conditional “2019” Depicts which year (2019 or 2020) Borrower is using, for their Gross Income. Only required if schedule_c_2483_form is true
schedule_c_gross_income number Conditional 1000.00 Depicts Total Amount of Gross Income (from IRS Form 1040, Schedule C, Line 7). Only required if schedule_c_2483_form is true

Request Path Parameters

Not Applicable

Request Query Parameters

Not Applicable

Request Form Data Parameters

Not Applicable

Response (Sample)


{
    "business": {
        "owners": [
            {
                "business_type": 2,
                "tin_type": 0,
                "tin": "252-75-1625",
                "slug": "3456f327-f9ec-48c7-a9eb-7a628da63d4f",
                "owner_type": 1,
                "business_name": "ABC Corp",
                "first_name": "James",
                "last_name": "Marshall",
                "title": "Director",
                "ownership_percentage": 25.0,
                "address_line_1": "123 Second St",
                "address_line_2": "",
                "city": "Manhattan",
                "state": "NY",
                "zip_code": "10004",
                "zip_code_plus4": "1234",
                "position": "Director",
                "veteran_status": "1",
                "gender": "M",
                "ethnicity": "N",
                "race": [
                    "1",
                    "2"
                ]
            }
        ],
        "slug": "1d7916f1-5301-4af3-8354-e0941e3a00eb",
	"naics_code": "722513",
	"business_type": 1,
        "dba_tradename": "ABC Corp",
	"legal_name": "ABC Corp",
	"first_name": "James",
        "last_name": "Marshall",
        "address_line_1": "5050 Ritter Rd",
        "address_line_2": "Suite B",
        "city": "Mechanicsburg",
        "state": "PA",
        "zip_code": "17055",
        "zip_code_plus4": "1234",
        "tin": "835-88-1068",
        "tin_type": 0,
        "phone_number": "548-25-6218",
        "primary_contact": "James",
        "primary_contact_email": "user@example.com",
        "is_franchise": true,
	"is_sba_listed_franchise": true,
        "franchise_code": "S2956",
        "date_of_establishment": "2019-01-01"
        },
    "status": "Pending Validation",
    "organization": {
        "name": "PERF8888",
        "etran_location_id": "8888",
        "slug": "f399f9b4-1e98-447e-9c66-5abda327eba1"
    },
    "created_at": "2021-01-18T18:39:49.768882Z",
    "slug": "3c00737c-7aa5-4741-93bb-7e4f3e5213de",
    "sba_application_id": null,
    "sba_number": null,
    "submission_confirmation_id": "50f101798164",
    "validation_errors": null,
    "low_to_moderate_income": null,
    "average_monthly_payroll": 1000,
    "loan_amount": 2500,
    "refinance_of_eidl_amount": null,
    "refinance_of_eidl_loan_number": "string",
    "number_of_employees": 1,
    "period_1_quarter": "1",
    "period_1_revenue": 0,
    "period_2_quarter": "1",
    "period_2_revenue": 0,
    "purpose_of_loan_payroll": true,
    "purpose_of_loan_mortgage": false,
    "purpose_of_loan_utilities": false,
    "purpose_of_loan_covered_operations_expenditures": false,
    "purpose_of_loan_covered_property_damage": false,
    "purpose_of_loan_covered_supplier_costs": false,
    "purpose_of_loan_covered_worker_protection_expenditure": false,
    "purpose_of_loan_other": false,
    "purpose_of_loan_other_info": "",
    "ineligible_general": true,
    "ineligible_bad_loan": true,
    "ineligible_criminal_charges": true,
    "ineligible_felony": true,
    "applicant_is_eligible": true,
    "applicant_meets_revenue_test_and_size_standard": true,
    "applicant_no_shuttered_venue_grant": true,
    "applicant_has_reduction_in_gross_receipts": true,
    "applicant_wont_receive_another_second_draw": true,
    "applicant_meets_size_standard": 1,
    "lender_contracted_third_party": true,
    "loan_request_is_necessary": true,
    "has_other_businesses": true,
    "received_eidl": false,
    "all_employees_residency": true,
    "second_draw_ppp_loan": false,
    "ppp_first_draw_sba_loan_number": 0,
    "ppp_first_draw_loan_amount": 0,
    "lender_application_number": "12345",
    "sba_decision_date:null,
    "schedule_c_2483_form": true,
    "schedule_c_tax_year": "2019",
    "schedule_c_gross_income": 20000.00
	
	
}

HTTP Response Code: 200

Parameter Name Data Type Sample Value Description
business JSON Object    
owners JSON Array    
business_type number 2 Business type of owner
tin_type number 0 Depicts whether TIN of the owner is SSN or EIN or ITIN. EIN=0, SSN=1, ITIN=4
tin String 252-75-1625 TIN of the owner (EIN or SSN)
slug String 3456f327-f9ec-48c7-a9eb-7a628da63d4f SLUG ID/Unique ID of the Owner in SBA system
owner_type Number 1 Owner type for the Business. Valid values are 1 or 2 (1 for PERSON and 2 for BUSINESS)
business_name String Null Business Owner name. It will be null if owner is a Person
first_name String James Owner’s first name
last_name String Marshall Owner’s last name
title String Director Title of the owner
ownership_percentage Number 25.0 % Ownership of the owner. Value can vary from 20 to 100
address_line_1 String 123 Second St Address Line 1 of the owner
address_line_2 String   Address Line 2 of owner
city String Manhattan City of owner’s address
state String NY State code of owner’s address
zip_code String 10004 Zip code of owner’s address
zip_code_plus4 String 1234 Zip + 4 of owner’s address
position String Director Position of owner based on demographic information provided as part of Loan application
veteran_status String 1 Veteran status of owner based on information provided as part of Loan application (1=Non-Veteran; 2=Veteran; 3=Service-Disabled Veteran;4=Spouse of Veteran; X=Not Disclosed)
gender String M Gender of the owner based on information provided as part of Loan application (M=Male; F=Female; X=Not Disclosed)
ethnicity String N Ethnicity of the owner based on information provided as part of Loan application (H=Hispanic or Latino; N=Not Hispanic or Latino; X=Not Disclosed)
race Array 1 Race of the owner based on information provided as part of Loan application, multiple values allowed (1=American Indian or Alaska Native; 2=Asian; 3=Black or African-American; 4=Native Hawaiian or Pacific Islander; 5=White; X=Not Disclosed)
slug String 1d7916f1-5301-4af3-8354-e0941e3a00eb Slug / Unique id of the Business in SBA system
naics_code Number 722513 NAICS code of the Business
business_type number 1 Business type. Valid values are SOLE_PROPRIETOR = 1, PARTNERSHIP = 2, C_CORP = 3, LLC = 4, JOINT_VENTURE = 5, PROFESSIONAL_ASSOCIATION = 6, TRUST = 7, COOPERATIVE = 8, LLP = 9, S_CORP = 10, NPO or Non-Profit Organization (Other 501(c)) = 11, TENANT_IN_COMMON = 12, ESOP = 13, NONPROFIT_CHILD_CARE = 14, ROBS = 15, ELIG_SELF_EMPLOYED = 16, INDEPENDENT_CONTRACTOR = 17, NONPROFIT_C_3_ORGANIZTION = 21, NONPROFIT_C_6_ORGANIZTION = 22, VETERANS_ORG = 23, TRIBAL = 24, HOUSING_COOPERATIVE = 25, SINGLE_MEMBER_LLC = 26, QUALIFIED_JOINT_VENTURE (spouses) = 27
dba_tradename String ABC Corp Doing Business As/Trade name for Business
legal_name String ABC Corp Borrower Name
first_name String James first name - Borrower
last_name String Marshall last name - Borrower
address_line_1 String 5050 Ritter Rd Address Line 1 of Borrower
address_line_2 String Suite B Address Line 2 of Borrower
city String Mechanicsburg City of Borrower
state String PA State code of Borrower
zip_code String 17055 Zip code of Borrower
zip_code_plus4 String 1234 Zip + 4 of the Borrower
tin String 435-88-1068 TIN of the Borrower (EIN/SSN/ITIN)
tin_type number 1 TIN Type of the Borrower (EIN=0, SSN=1, ITIN=4)
phone_number Number 5482562187 Business phone number
primary_contact String James Primary contact for Business
primary_contact_email String user@example.com Email address for Business
is_franchise Boolean true Is Busienss a Franchise listed ?
is_sba_listed_franchise boolean true Whether Franchise is listed with SBA
franchise_code String S2956 SBA Franchise Identifier Code
date_of_establishment String 2019-01-01 Date of establishment of Business in YYYY-MM-DD format
status String Pending Validation Status of PPP Loan Request. Valid values are Pending Validation, Failed validation, Under Review, Approved by SBA, Not Approved by SBA, Further Research Required
name String PERF8888 Name of the origanization as defined in etran
etran_location_id String 8888 etran location id as defined in etran
slug String 3c00737c-7aa5-4741-93bb-7e4f3e5213de Slug/Unique ID of the Oranization
created_at string 2021-01-18T18:39:49.768882Z Timestamp with timezone (in UTC) at which Loan request was created in SBA system
slug String 9c00737c-7aa5-4741-93bb-7e4f3e5213de Slug/Unique ID of Loan application. This slug id should be used for loan status or withdrawal
sba_application_id String null SBA Application id
sba_number number null sba number of the loan request
submission_confirmation_id String 50f101798164 Unique confirmation id
validation_errors String null Validation errors if any
average_monthly_payroll Number 1000.0 Average monthly payroll of borrower. (If Applicant submitted SBA Form 2483-C, it was the amount entered in B in either table, plus the amount entered in C for Applicants with employees (if applicable) or If Applicant submitted SBA Form 2483-SD-C, it was the amount entered in B in either table, plus the amount entered in C for Applicants with employees (if applicable)
loan_amount Number 2500.0 Loan amount submitted as part of Loan request to SBA
refinance_of_eidl_amount Number 1000 EIDL Loan amount, if applicable. Only valid for first draw loans and in that case it’s optional
refinance_of_eidl_loan_number String 123456789 EIDL loan number, if aplicable
number_of_employees Number 1 Number of employees, submitted as part of Loan request to SBA
period_1_quarter String 1 Required if second_draw_ppp_loan is true
period_1_revenue Number 10000 Required if second_draw_ppp_loan is true
period_2_quarter String 1 Required if second_draw_ppp_loan is true
period_2_revenue Number 6000 Required if second_draw_ppp_loan is true
purpose_of_loan_payroll boolean true true or false: See 2483 Form - Fields Mapping to API Elements
purpose_of_loan_mortgage boolean false true or false: See 2483 Form - Fields Mapping to API Elements
purpose_of_loan_utilities boolean false true or false: See 2483 Form - Fields Mapping to API Elements
purpose_of_loan_covered_operations_expenditures boolean false true or false: See 2483 Form - Fields Mapping to API Elements
purpose_of_loan_covered_property_damage boolean false true or false: See 2483 Form - Fields Mapping to API Elements
purpose_of_loan_covered_supplier_costs boolean false true or false: See 2483 Form - Fields Mapping to API Elements
purpose_of_loan_covered_worker_protection_expenditure boolean false true or false: See 2483 Form - Fields Mapping to API Elements
purpose_of_loan_other boolean false true or false: See 2483 Form - Fields Mapping to API Elements
purpose_of_loan_other_info string null other info: See 2483 Form - Fields Mapping to API Elements
ineligible_general boolean true Must be TRUE for validation. False will cause rejection with Attestations are not complete
ineligible_bad_loan boolean true Must be TRUE for validation. False will cause rejection with Attestations are not complete
ineligible_criminal_charges boolean true Must be TRUE for validation. False will cause rejection with Attestations are not complete
ineligible_felony boolean true Must be TRUE for validation. False will cause rejection with Attestations are not complete
applicant_is_eligible boolean true Must be TRUE for validation. False will cause rejection with Attestations are not complete
applicant_meets_revenue_test_and_size_standard boolean true Must be TRUE for validation. False will cause rejection with Attestations are not complete
applicant_no_shuttered_venue_grant boolean true Must be TRUE for validation. False will cause rejection with Attestations are not complete
applicant_has_reduction_in_gross_receipts boolean true Must be TRUE for validation. False will cause rejection with Attestations are not complete
applicant_wont_receive_another_second_draw boolean true Must be TRUE for validation. False will cause rejection with Attestations are not complete
applicant_meets_size_standard Number 1 1=No more than 500, 2=SBA industry size - no validation on number_of_employees, 3 = SBA alternative size - no validation on number_of_employees
lender_contracted_third_party Boolean false true or false
loan_request_is_necessary boolean true Must be TRUE for validation. False will cause rejection with Attestations are not complete
has_other_businesses boolean true True or False
all_employees_residency boolean true True or False
second_draw_ppp_loan boolean false True or False
ppp_first_draw_sba_loan_number number 123456789 First draw SBA Loan number, appicable for second draw PPP Loan only
ppp_first_draw_loan_amount number 2000.00 First draw loan amount, applicable for second draw PPP Loan only
lender_application_number String 12345 lender application number, this will be saved and passed through to eTran as lenderApplicNmb in the etran.xsd
sba_decision_date String null Date on which SBA makes a decision on Loan request Application
schedule_c_2483_form Boolean false Depicts whether Borrower is using any of the 2483 Schedule C forms. Allowed only for borrower business types of 1,16,17,26,27
schedule_c_tax_year String “2019” Depicts which year (2019 or 2020) Borrower is using, for their Gross Income. Only required if schedule_c_2483_form is true
schedule_c_gross_income number 1000.00 Depicts Total Amount of Gross Income (from IRS Form 1040, Schedule C, Line 7). Only required if schedule_c_2483_form is true

HTTP Response Code: 403

Parameter Name Data Type Sample Value Description
detail String Authentication credentials were not provided. The detail of the 403 error response

HTTP Response Code: 429

API Call Rate Limits
To maintain reliability and stability within our environments, PPP portal operates with certain API call efficiency guidelines. To ensure effective load balance we continually monitor the API calls to our backend systems and we may throttle requests from developers that are putting unnecessary burden on the system. If the API call rate limit is reached, client will receive an exception. The exception message states: “Request was throttled. Expected available in 1 second”.

Parameter Name Data Type Sample Value Description
detail String Request was throttled. Expected available in 1 second The detail of the 429 error response
status_code Number 429 The HTTP status code

Design Consideration for Client Application

Lenders can use this API to submit Loan request. SBA number may not get assigned immediately.

2. Get Details of ALL PPP Loan Requests

This API fetches the list & status of ALL PPP Loan Requests submitted to SBA, for a paticular lender

Request type: HTTPS

API Endpoint:

GET /api/origination/

Request (Sample)


/api/origination/
api/origination/?status=Further Research Required

Request Parameters

Not Applicable (No request body)

Request Path Parameters

Not Applicable

Request Query Parameters

Query Parameter Name Data Type Mandatory/Optional Sample Value Description
page Number Optional 2 The page number of the records to be fetched (for pagination)
page_size Number Optional 500 Max Number of Loans to be fetched in one API call.Default is 100 and max allowed is 1000
status string Optional Pending Validation Loan Status

Request Form Data Parameters

Not Applicable

Response (Sample)


{
    "count": 1000,
    "next": "https://forgiveness.sba.gov/api/origination/?page=2",
    "previous": null,
    "results": [
        {
            "business": {
                "owners": [
                    {
                        "slug": "3456f327-f9ec-48c7-a9eb-7a628da63d4f",
                        "owner_type": 1,
                        "business_name": "ABC Corp",
                        "first_name": "James",
                        "last_name": "Marshall",
                        "title": "Director",
                        "business_type": 2,
                        "ownership_percentage": 25.0,
                        "tin": "252751625",
                        "tin_type": 0,
                        "address_line_1": "123 Second St",
                        "address_line_2": "",
                        "city": "Manhattan",
                        "state": "NY",
                        "zip_code": "10004",
                        "zip_code_plus4": "1234",
                        "position": "Director",
                        "veteran_status": "1",
                        "gender": "M",
                        "ethnicity": "N",
                        "race": [
                            "1",
                            "2"
                        ]
                    }
                ],
                "naics_code": 722513,
                "franchise_code": "S3493",
                "slug": "1d7916f1-5301-4af3-8354-e0941e3a00eb",
                "business_type": 2,
                "dba_tradename": "ABC Corp",
                "legal_name": "ABC Corp",
                "first_name": null,
                "last_name": null,
                "address_line_1": "5050 Ritter Rd",
                "address_line_2": "Suite B",
                "city": "Mechanicsburg",
                "state": "PA",
                "zip_code": "17055",
                "zip_code_plus4": "1234",
                "tin": "435881068",
                "tin_type": 0,
                "phone_number": "5482562187",
                "primary_contact": "James",
                "primary_contact_email": "user@example.com",
                "is_franchise": true,
		"is_sba_listed_franchise": true,
                "date_of_establishment": "2019-01-01"                
            },
            "status": "Pending Validation",
            "slug": "3c00737c-7aa5-4741-93bb-7e4f3e5213de",
            "average_monthly_payroll": 1000.0,
            "loan_amount": 2500.0,
            "refinance_of_eidl_amount": null,
	    "refinance_of_eidl_loan_number": null,
            "number_of_employees": 1,
	    "period_1_quarter": 1,
            "period_1_revenue": 10000.0,
            "period_2_quarter": 1,
            "period_2_revenue": 6000.0,
            "purpose_of_loan_payroll": true,
            "purpose_of_loan_mortgage": false,
            "purpose_of_loan_utilities": false,
            "purpose_of_loan_covered_operations_expenditures": false,
            "purpose_of_loan_covered_property_damage": false,
            "purpose_of_loan_covered_supplier_costs": false,
            "purpose_of_loan_covered_worker_protection_expenditure": false,
            "purpose_of_loan_other": false,
            "purpose_of_loan_other_info": "",
            "ineligible_general": true,
            "ineligible_bad_loan": true,
            "ineligible_criminal_charges": true,
            "ineligible_felony": true,
            "has_other_businesses": true,
            "received_eidl": true,
            "all_employees_residency": true,
            "sba_application_id": null,
            "ppp_first_draw_sba_loan_number": null,
            "ppp_first_draw_loan_amount": null,
            "sba_number": 1234567890,
            "validation_errors": null,
            "second_draw_ppp_loan": false,
            "applicant_meets_size_standard": 1,
            "submission_confirmation_id": "50f101798164",
            "applicant_is_eligible": true,
            "loan_request_is_necessary": true,
            "applicant_meets_revenue_test_and_size_standard": true,
            "applicant_no_shuttered_venue_grant": true,
            "lender_contracted_third_party": false,
	    "applicant_has_reduction_in_gross_receipts": false,
            "applicant_wont_receive_another_second_draw": false,
            "lender_application_number": null,
            "organization": 7261,
	    "sba_decision_date": '2021-01-30'
	     "schedule_c_2483_form": true,
             "schedule_c_tax_year": "2019",
             "schedule_c_gross_income": 20000.00
            
        }
    ]
}

Response Parameters

HTTP Response Code: 200

Parameter Name Data Type Sample Value Description
count Number 1 The total count of the PPP Loan requests.
next String null The URI of the next set of PPP Loan requests to be fetched
previous String null The URI of the previous set of PPP Loan requests to be fetched
results JSON Array    
business JSON Object    
owners JSON Array    
slug String 3456f327-f9ec-48c7-a9eb-7a628da63d4f SLUG ID/Unique ID of the Owner in SBA system
owner_type Number 1 Owner type for the Business. Valid values are 1 or 2 (1 for PERSON and 2 for BUSINESS)
business_name String Null Business Owner name. It will be null if owner is a Person
first_name String James Owner’s first name
last_name String Marshall Owner’s last name
title String Director Title of the owner
business_type Number 2 Owner’s Business type (if owner is business). Valid values are SOLE_PROPRIETOR = 1, PARTNERSHIP = 2, C_CORP = 3, LLC = 4, JOINT_VENTURE = 5, PROFESSIONAL_ASSOCIATION = 6, TRUST = 7, COOPERATIVE = 8, LLP = 9, S_CORP = 10, NPO or Non-Profit Organization (Other 501(c)) = 11, TENANT_IN_COMMON = 12, ESOP = 13, NONPROFIT_CHILD_CARE = 14, ROBS = 15, ELIG_SELF_EMPLOYED = 16, INDEPENDENT_CONTRACTOR = 17, NONPROFIT_C_3_ORGANIZTION = 21, NONPROFIT_C_6_ORGANIZTION = 22, VETERANS_ORG = 23, TRIBAL = 24, HOUSING_COOPERATIVE = 25, SINGLE_MEMBER_LLC = 26, QUALIFIED_JOINT_VENTURE (spouses) = 27
ownership_percentage Number 25.0 % Ownership of the owner. Value can vary from 20 to 100
tin String 252751625 TIN of the owner (EIN or SSN)
tin_type Number 0 Depicts whether TIN of the owner is SSN or EIN or ITIN. EIN=0, SSN=1, ITIN=4
address_line_1 String 123 Second St Address Line 1 of the owner
address_line_2 String   Address Line 2 of owner
city String Manhattan City of owner’s address
state String NY State code of owner’s address
zip_code String 10004 Zip code of owner’s address
zip_code_plus4 String 1234 Zip + 4 of owner’s address
position String Director Position of owner based on demographic information provided as part of Loan application
veteran_status String 1 Veteran status of owner based on information provided as part of Loan application (1=Non-Veteran; 2=Veteran; 3=Service-Disabled Veteran;4=Spouse of Veteran; X=Not Disclosed)
gender String M Gender of the owner based on information provided as part of Loan application (M=Male; F=Female; X=Not Disclosed)
ethnicity String N Ethnicity of the owner based on information provided as part of Loan application (H=Hispanic or Latino; N=Not Hispanic or Latino; X=Not Disclosed)
race Array 1 Race of the owner based on information provided as part of Loan application, multiple values allowed (1=American Indian or Alaska Native; 2=Asian; 3=Black or African-American; 4=Native Hawaiian or Pacific Islander; 5=White; X=Not Disclosed)
naics_code Number 722513 NAICS code of the Business
franchise_code String S2956 SBA Franchise Identifier Code
slug String 1d7916f1-5301-4af3-8354-e0941e3a00eb Slug / Unique id of the Business in SBA system
business_type Number 2 Business type. Valid values are SOLE_PROPRIETOR = 1, PARTNERSHIP = 2, C_CORP = 3, LLC = 4, JOINT_VENTURE = 5, PROFESSIONAL_ASSOCIATION = 6, TRUST = 7, COOPERATIVE = 8, LLP = 9, S_CORP = 10, NPO or Non-Profit Organization (Other 501(c)) = 11, TENANT_IN_COMMON = 12, ESOP = 13, NONPROFIT_CHILD_CARE = 14, ROBS = 15, ELIG_SELF_EMPLOYED = 16, INDEPENDENT_CONTRACTOR = 17, NONPROFIT_C_3_ORGANIZTION = 21, NONPROFIT_C_6_ORGANIZTION = 22, VETERANS_ORG = 23, TRIBAL = 24, HOUSING_COOPERATIVE = 25, SINGLE_MEMBER_LLC = 26, QUALIFIED_JOINT_VENTURE (spouses) = 27
dba_tradename String ABC Corp Doing Business As/Trade name for Business
legal_name String ABC Corp Borrower Business Name
first_name String null Borrower First Name
last_name String null Borrower Last Name
address_line_1 String 5050 Ritter Rd Address Line 1 of Borrower
address_line_2 String Suite B Address Line 2 of Borrower
city String Mechanicsburg City of Borrower
state String PA State code of Borrower
zip_code String 17055 Zip code of Borrower
zip_code_plus4 String 1234 Zip + 4 of the Borrower
tin String 435881068 TIN of the Borrower (EIN/SSN/ITIN)
tin_type Number 0 TIN Type of the Borrower (EIN=0, SSN=1, ITIN=4)
phone_number string 5482562187 Business phone number
primary_contact String James Primary contact for Business
primary_contact_email String user@example.com Email address for Business
is_franchise Boolean true Is Busienss a Franchise listed ?
is_sba_listed_franchise Boolean true Is Busienss a Franchise which is listed with SBA ?
date_of_establishment String 2019-01-01 Date of establishment of Business in YYYY-MM-DD format
status String Pending Validation Status of PPP Loan Request. Valid values are Pending Validation, Failed Validation, Under Review, Approved by SBA, Not Approved by SBA, Further Research Required
slug String 3c00737c-7aa5-4741-93bb-7e4f3e5213de Slug/Unique ID of the Loan Request. This slug id should be used to check status of Loan request or to withdraw a Loan application
average_monthly_payroll Number 1000.0 Average monthly payroll of borrower
loan_amount Number 2500.0 Loan amount submitted as part of Loan request to SBA
refinance_of_eidl_amount Number null if Borrower had an EIDL loan and are refinancing (as part of a first draw PPP loan), include it in this field.
refinance_of_eidl_loan_number String null if Borrower had an EIDL loan and are refinancing (as part of a first draw PPP loan), include it in this field.
number_of_employees Number 1 Number of employees, submitted as part of Loan request to SBA
period_1_quarter String 1 Period 1 quarter
period_1_revenue Number 10000.0 Period 1 revenue
period_2_quarter String 1 Period 2 quarter
period_2_revenue Number 6000.0 Period 2 Revenue
purpose_of_loan_payroll Boolean true Purpose of Loan - Payroll
purpose_of_loan_mortgage Boolean false Purpose of Loan - Mortgage
purpose_of_loan_utilities Boolean false Purpose of Loan - Utilities
purpose_of_loan_covered_operations_expenditures Boolean false Purpose of Loan - Operations Expenditure
purpose_of_loan_covered_property_damage Boolean false Purpose of Loan - Property Damage
purpose_of_loan_covered_supplier_costs Boolean false Purpose of Loan - Supplier costs
purpose_of_loan_covered_worker_protection_expenditure Boolean false Purpose of Loan - Protection expenditure
purpose_of_loan_other Boolean false Purpose of Loan - Other
purpose_of_loan_other_info String   Purpose of Loan - Other info details
ineligible_general Boolean true Borrower ineligible due Applicant or any owner of the Applicant presently suspended, debarred, proposed for debarment, declared ineligible, voluntarily excluded from participation in this transaction by any Federal department or agency, or presently involved in any bankruptcy
ineligible_bad_loan Boolean true Borrower ineligible due to Applicant, any owner of the Applicant, or any business owned or controlled by any of them, ever obtained a direct or guaranteed loan from SBA or any other Federal agency that is (a) currently delinquent, or (b) has defaulted in the last 7 years and caused a loss to the government
ineligible_criminal_charges Boolean true Borrower inelgible due Applicant (if an individual) or any individual owning 20% or more of the equity of the Applicant presently incarcerated or, for any felony, presently subject to an indictment, criminal information, arraignment, or other means by which formal criminal charges are brought in any jurisdiction
ineligible_felony Boolean true Borrower inelgible due to Within the last 5 years, for any felony involving fraud, bribery, embezzlement, or a false statement in a loan application or an application for federal financial assistance, or within the last year, for any other felony, has the Applicant (if an individual) or any owner of the Applicant 1) been convicted; 2) pleaded guilty; 3) pleaded nolo contendere; or 4) commenced any form of parole or probation (including probation before judgment)
has_other_businesses Boolean true Applicant or any owner of the Applicant an owner of any other business, or have common management (including a management agreement) with any other business
all_employees_residency Boolean true United States the principal place of residence for all employees of the Applicant included in the Applicant’s payroll calculation
sba_application_id String null Application ID provided by etran after Loan is submitted to etran
ppp_first_draw_sba_loan_number String null PPP First Draw SBA Loan Number
ppp_first_draw_loan_amount Number null PPP First Draw SBA Loan amount
sba_number number 1234567890 SBA number assigned by Etran once SBA approves Loan request
validation_errors String {"Reason":"Do Not Pay - Death Sources","StartDate":"01/13/2021","EndDate":null} Details of validation errors or not approved reason, received from Etran
second_draw_ppp_loan Boolean false Is this Loan a second draw PPP Loan (true or false)
applicant_meets_size_standard Number 1 Applicant meets size standard (1=No more than 500, 2=SBA industry size, 3 = SBA alternative size)
submission_confirmation_id String “693c01798166” Submission confirmation id received in response of loan application submission
applicant_is_eligible boolean true Lender confirmation that applicant is eligible for PPP Loan
loan_request_is_necessary boolean true Lender confirmation that Loan request is necessary
applicant_meets_revenue_test_and_size_standard boolean true Lender confirmation that applicant meets revenue test and size standard
applicant_no_shuttered_venue_grant boolean true The Applicant has certified to the Lender that (1) it has not been approved for a Shuttered Venue Operator (SVO) grant from SBA as of the date of the loan application, and acknowledged that if the Applicant is approved for an SVO grant
before SBA issues a loan number for the loan, the Applicant is ineligible for the loan and acceptance of any loan proceeds will be considered an unauthorized use      
lender_contracted_third_party boolean false Lender confirmation that Lender contacted third party
applicant_has_reduction_in_gross_receipts boolean false Applicant had revenue reduction
applicant_wont_receive_another_second_draw boolean false Applicant won’t receive another second draw loan
lender_application_number string null Lender application numner
organization Number 7261 Lender organization id as defined in etran system
sba_decision_date String 2021-01-30 Date on which SBA makes a decision on Loan request Application
schedule_c_2483_form Boolean false Depicts whether Borrower is using any of the 2483 Schedule C forms. Allowed only for borrower business types of 1,16,17,26,27
schedule_c_tax_year String “2019” Depicts which year (2019 or 2020) Borrower is using, for their Gross Income. Only required if schedule_c_2483_form is true
schedule_c_gross_income number 1000.00 Depicts Total Amount of Gross Income (from IRS Form 1040, Schedule C, Line 7). Only required if schedule_c_2483_form is true

HTTP Response Code: 403

Parameter Name Data Type Sample Value Description
detail String Authentication credentials were not provided. The detail of the 403 error response

HTTP Response Code: 429

API Call Rate Limits
To maintain reliability and stability within our environments, PPP portal operates with certain API call efficiency guidelines. To ensure effective load balance we continually monitor the API calls to our backend systems and we may throttle requests from developers that are putting unnecessary burden on the system. If the API call rate limit is reached, client will receive an exception. The exception message states: “Request was throttled. Expected available in 1 second”.

Parameter Name Data Type Sample Value Description
detail String Request was throttled. Expected available in 1 second The detail of the 429 error response
status_code Number 429 The HTTP status code

Design Consideration for Client Application

This API provides Status/Details of all submitted PPP Loan requests for a Lender. This API supports pagination functionality and if client is designing a UI or batch process to call this API, they may like to have page up and page down feature. Every page returns 100 maximum records (default page size). Loan status and page size are optional parameters.

3. Get specific PPP Loan Request Details

This API is used for getting details of submitted PPP Loan request, using parameters like unique slug id (Loan request UUID) or TIN & TIN type

Request type: HTTPS

API Endpoint:

GET /api/origination/{slug}/

Request (Sample)


/api/origination/3456f327-f9ec-48c7-a9eb-7a628da63d4f/
/api/origination/?tin=210123458&tin_type=0 (note: In case Borrower succesfully applied for first draw and second draw loan in 2021, this will give both loans details in API response)

Request Parameters

Not Applicable (No request body)

Request Path Parameters

Path Parameter Name Data Type Mandatory/Optional Sample Value Description
slug UUID Optional 3456f327-f9ec-48c7-a9eb-7a628da63d4f The UUID of the PPP Loan request
tin Number Optional 524457089 TIN (EIN/SSN/ITIN) of the Borrower
tin_type Number Optional 0 Tin type - 0 for EIN or 1 for SSN or 4 for ITIN

Request Query Parameters

Not Applicable

Request Form Data Parameters

Not Applicable

Response (Sample)


        {
            "business": {
                "owners": [
                    {
                        "slug": "3456f327-f9ec-48c7-a9eb-7a628da63d4f",
                        "owner_type": 1,
                        "business_name": "ABC Corp",
                        "first_name": "James",
                        "last_name": "Marshall",
                        "title": "Director",
                        "business_type": 2,
                        "ownership_percentage": 25.0,
                        "tin": "252751625",
                        "tin_type": 0,
                        "address_line_1": "123 Second St",
                        "address_line_2": "",
                        "city": "Manhattan",
                        "state": "NY",
                        "zip_code": "10004",
                        "zip_code_plus4": "1234",
                        "position": "Director",
                        "veteran_status": "1",
                        "gender": "M",
                        "ethnicity": "N",
                        "race": [
                            "1",
                            "2"
                        ]
                    }
                ],
                "naics_code": 722513,
                "franchise_code": "S3493",
                "slug": "1d7916f1-5301-4af3-8354-e0941e3a00eb",
                "business_type": 2,
                "dba_tradename": "ABC Corp",
                "legal_name": "ABC Corp",
                "first_name": null,
                "last_name": null,
                "address_line_1": "5050 Ritter Rd",
                "address_line_2": "Suite B",
                "city": "Mechanicsburg",
                "state": "PA",
                "zip_code": "17055",
                "zip_code_plus4": "1234",
                "tin": "435881068",
                "tin_type": 0,
                "phone_number": "5482562187",
                "primary_contact": "James",
                "primary_contact_email": "user@example.com",
                "is_franchise": true,
	        "is_sba_listed_franchise": true,
                "date_of_establishment": "2019-01-01"                
            },
            "status": "Pending Validation",
            "slug": "3c00737c-7aa5-4741-93bb-7e4f3e5213de",
            "average_monthly_payroll": 1000.0,
            "loan_amount": 2500.0,
            "refinance_of_eidl_amount": null,
	    "refinance_of_eidl_loan_number": null,
            "number_of_employees": 1,
	    "period_1_quarter": 1,
            "period_1_revenue": 10000.0,
            "period_2_quarter": 1,
            "period_2_revenue": 6000.0,
            "purpose_of_loan_payroll": true,
            "purpose_of_loan_mortgage": false,
            "purpose_of_loan_utilities": false,
            "purpose_of_loan_covered_operations_expenditures": false,
            "purpose_of_loan_covered_property_damage": false,
            "purpose_of_loan_covered_supplier_costs": false,
            "purpose_of_loan_covered_worker_protection_expenditure": false,
            "purpose_of_loan_other": false,
            "purpose_of_loan_other_info": "",
            "ineligible_general": true,
            "ineligible_bad_loan": true,
            "ineligible_criminal_charges": true,
            "ineligible_felony": true,
            "has_other_businesses": true,
            "received_eidl": true,
            "all_employees_residency": true,
            "sba_application_id": null,
            "ppp_first_draw_sba_loan_number": null,
            "ppp_first_draw_loan_amount": null,
            "sba_number": 1234567890,
            "validation_errors": null,
            "second_draw_ppp_loan": false,
            "applicant_meets_size_standard": 1,
            "submission_confirmation_id": "50f101798164",
            "applicant_is_eligible": true,
            "loan_request_is_necessary": true,
            "applicant_meets_revenue_test_and_size_standard": true,
            "applicant_no_shuttered_venue_grant": true,
            "lender_contracted_third_party": false,
	    "applicant_has_reduction_in_gross_receipts": false,
            "applicant_wont_receive_another_second_draw": false,
            "lender_application_number": null,
            "organization": 7261,
	    "sba_decision_date": '2021-01-30',
            "schedule_c_2483_form": true,
            "schedule_c_tax_year": "2019",
            "schedule_c_gross_income": 20000.00
            
        }
    

Response Parameters

HTTP Response Code: 200

Parameter Name Data Type Sample Value Description
business JSON Object    
owners JSON Array    
slug String 3456f327-f9ec-48c7-a9eb-7a628da63d4f SLUG ID/Unique ID of the Owner in SBA system
owner_type Number 1 Owner type for the Business. Valid values are 1 or 2 (1 for PERSON and 2 for BUSINESS)
business_name String Null Business Owner name. It will be null if owner is a Person
first_name String James Owner’s first name
last_name String Marshall Owner’s last name
title String Director Title of the owner
business_type Number 2 Owner’s Business type (if owner is business). Valid values are SOLE_PROPRIETOR = 1, PARTNERSHIP = 2, C_CORP = 3, LLC = 4, JOINT_VENTURE = 5, PROFESSIONAL_ASSOCIATION = 6, TRUST = 7, COOPERATIVE = 8, LLP = 9, S_CORP = 10, NPO or Non-Profit Organization (Other 501(c)) = 11, TENANT_IN_COMMON = 12, ESOP = 13, NONPROFIT_CHILD_CARE = 14, ROBS = 15, ELIG_SELF_EMPLOYED = 16, INDEPENDENT_CONTRACTOR = 17, NONPROFIT_C_3_ORGANIZTION = 21, NONPROFIT_C_6_ORGANIZTION = 22, VETERANS_ORG = 23, TRIBAL = 24, HOUSING_COOPERATIVE = 25,SINGLE_MEMBER_LLC = 26, QUALIFIED_JOINT_VENTURE (spouses) = 27
ownership_percentage Number 25.0 % Ownership of the owner. Value can vary from 20 to 100
tin String 252751625 TIN of the owner (EIN or SSN)
tin_type Number 0 Depicts whether TIN of the owner is SSN or EIN or ITIN. EIN=0, SSN=1, ITIN=4
address_line_1 String 123 Second St Address Line 1 of the owner
address_line_2 String   Address Line 2 of owner
city String Manhattan City of owner’s address
state String NY State code of owner’s address
zip_code String 10004 Zip code of owner’s address
zip_code_plus4 String 1234 Zip + 4 of owner’s address
position String Director Position of owner based on demographic information provided as part of Loan application
veteran_status String 1 Veteran status of owner based on information provided as part of Loan application (1=Non-Veteran; 2=Veteran; 3=Service-Disabled Veteran;4=Spouse of Veteran; X=Not Disclosed)
gender String M Gender of the owner based on information provided as part of Loan application (M=Male; F=Female; X=Not Disclosed)
ethnicity String N Ethnicity of the owner based on information provided as part of Loan application (H=Hispanic or Latino; N=Not Hispanic or Latino; X=Not Disclosed)
race Array 1 Race of the owner based on information provided as part of Loan application, multiple values allowed (1=American Indian or Alaska Native; 2=Asian; 3=Black or African-American; 4=Native Hawaiian or Pacific Islander; 5=White; X=Not Disclosed)
naics_code Number 722513 NAICS code of the Business
franchise_code String S2956 SBA Franchise Identifier Code
slug String 1d7916f1-5301-4af3-8354-e0941e3a00eb Slug / Unique id of the Business in SBA system
business_type Number 2 Business type. Valid values are SOLE_PROPRIETOR = 1, PARTNERSHIP = 2, C_CORP = 3, LLC = 4, JOINT_VENTURE = 5, PROFESSIONAL_ASSOCIATION = 6, TRUST = 7, COOPERATIVE = 8, LLP = 9, S_CORP = 10, NPO or Non-Profit Organization (Other 501(c)) = 11, TENANT_IN_COMMON = 12, ESOP = 13, NONPROFIT_CHILD_CARE = 14, ROBS = 15, ELIG_SELF_EMPLOYED = 16, INDEPENDENT_CONTRACTOR = 17, NONPROFIT_C_3_ORGANIZTION = 21, NONPROFIT_C_6_ORGANIZTION = 22, VETERANS_ORG = 23, TRIBAL = 24, HOUSING_COOPERATIVE = 25,SINGLE_MEMBER_LLC = 26, QUALIFIED_JOINT_VENTURE (spouses) = 27
dba_tradename String ABC Corp Doing Business As/Trade name for Business
legal_name String ABC Corp Borrower Business Name
first_name String null Borrower First Name
last_name String null Borrower Last Name
address_line_1 String 5050 Ritter Rd Address Line 1 of Borrower
address_line_2 String Suite B Address Line 2 of Borrower
city String Mechanicsburg City of Borrower
state String PA State code of Borrower
zip_code String 17055 Zip code of Borrower
zip_code_plus4 String 1234 Zip + 4 of the Borrower
tin String 435881068 TIN of the Borrower (EIN/SSN/ITIN)
tin_type Number 0 TIN Type of the Borrower (EIN=0, SSN=1, ITIN=4)
phone_number string 5482562187 Business phone number
primary_contact String James Primary contact for Business
primary_contact_email String user@example.com Email address for Business
is_franchise Boolean true Is Busienss a Franchise listed ?
is_sba_listed_franchise Boolean true Is Busienss a Franchise which is listed with SBA ?
date_of_establishment String 2019-01-01 Date of establishment of Business in YYYY-MM-DD format
status String Pending Validation Status of PPP Loan Request. Valid values are Pending Validation, Failed Validation, Under Review, Approved by SBA, Not Approved by SBA)
slug String 3c00737c-7aa5-4741-93bb-7e4f3e5213de Slug/Unique ID of the Loan Request. This slug id should be used to check status of Loan request or to withdraw a Loan application
average_monthly_payroll Number 1000.0 Average monthly payroll of borrower
loan_amount Number 2500.0 Loan amount submitted as part of Loan request to SBA
refinance_of_eidl_amount Number null if Borrower had an EIDL loan and are refinancing (as part of a first draw PPP loan), include it in this field.
refinance_of_eidl_loan_number String null if Borrower had an EIDL loan and are refinancing (as part of a first draw PPP loan), include it in this field.
number_of_employees Number 1 Number of employees, submitted as part of Loan request to SBA
period_1_quarter String 1 Period 1 quarter
period_1_revenue Number 10000.0 Period 1 revenue
period_2_quarter String 1 Period 2 quarter
period_2_revenue Number 6000.0 Period 2 Revenue
purpose_of_loan_payroll Boolean true Purpose of Loan - Payroll
purpose_of_loan_mortgage Boolean false Purpose of Loan - Mortgage
purpose_of_loan_utilities Boolean false Purpose of Loan - Utilities
purpose_of_loan_covered_operations_expenditures Boolean false Purpose of Loan - Operations Expenditure
purpose_of_loan_covered_property_damage Boolean false Purpose of Loan - Property Damage
purpose_of_loan_covered_supplier_costs Boolean false Purpose of Loan - Supplier costs
purpose_of_loan_covered_worker_protection_expenditure Boolean false Purpose of Loan - Protection expenditure
purpose_of_loan_other Boolean false Purpose of Loan - Other
purpose_of_loan_other_info String   Purpose of Loan - Other info details
ineligible_general Boolean true Borrower ineligible due Applicant or any owner of the Applicant presently suspended, debarred, proposed for debarment, declared ineligible, voluntarily excluded from participation in this transaction by any Federal department or agency, or presently involved in any bankruptcy
ineligible_bad_loan Boolean true Borrower ineligible due to Applicant, any owner of the Applicant, or any business owned or controlled by any of them, ever obtained a direct or guaranteed loan from SBA or any other Federal agency that is (a) currently delinquent, or (b) has defaulted in the last 7 years and caused a loss to the government
ineligible_criminal_charges Boolean true Borrower inelgible due Applicant (if an individual) or any individual owning 20% or more of the equity of the Applicant presently incarcerated or, for any felony, presently subject to an indictment, criminal information, arraignment, or other means by which formal criminal charges are brought in any jurisdiction
ineligible_felony Boolean true Borrower inelgible due to Within the last 5 years, for any felony involving fraud, bribery, embezzlement, or a false statement in a loan application or an application for federal financial assistance, or within the last year, for any other felony, has the Applicant (if an individual) or any owner of the Applicant 1) been convicted; 2) pleaded guilty; 3) pleaded nolo contendere; or 4) commenced any form of parole or probation (including probation before judgment)
has_other_businesses Boolean true Applicant or any owner of the Applicant an owner of any other business, or have common management (including a management agreement) with any other business
all_employees_residency Boolean true United States the principal place of residence for all employees of the Applicant included in the Applicant’s payroll calculation
sba_application_id String null Application ID provided by etran after Loan is submitted to etran
ppp_first_draw_sba_loan_number String null PPP First Draw SBA Loan Number
ppp_first_draw_loan_amount Number null PPP First Draw SBA Loan amount
sba_number number 1234567890 SBA number assigned by Etran once SBA approves Loan request
validation_errors String {"Reason":"Do Not Pay - Death Sources","StartDate":"01/13/2021","EndDate":null} Details of validation errors or not approved reason, received from Etran
second_draw_ppp_loan Boolean false Is this Loan a second draw PPP Loan (true or false)
applicant_meets_size_standard Number 1 Applicant meets size standard (1=No more than 500, 2=SBA industry size, 3 = SBA alternative size)
submission_confirmation_id String “693c01798166” Submission confirmation id received in response of loan application submission
applicant_is_eligible boolean true Lender confirmation that applicant is eligible for PPP Loan
loan_request_is_necessary boolean true Lender confirmation that Loan request is necessary
applicant_meets_revenue_test_and_size_standard boolean true Lender confirmation that applicant meets revenue test and size standard
applicant_no_shuttered_venue_grant boolean true The Applicant has certified to the Lender that (1) it has not been approved for a Shuttered Venue Operator (SVO) grant from SBA as of the date of the loan application, and acknowledged that if the Applicant is approved for an SVO grant
before SBA issues a loan number for the loan, the Applicant is ineligible for the loan and acceptance of any loan proceeds will be considered an unauthorized use      
lender_contracted_third_party boolean false Lender confirmation that Lender contacted third party
applicant_has_reduction_in_gross_receipts boolean false Applicant had revenue reduction
applicant_wont_receive_another_second_draw boolean false Applicant won’t receive another second draw loan
lender_application_number string null Lender application numner
organization Number 7261 Lender organization id as defined in etran system
sba_decision_date String 2021-01-30 Date on which SBA makes a decision on Loan request Application
schedule_c_2483_form Boolean false Depicts whether Borrower is using any of the 2483 Schedule C forms. Allowed only for borrower business types of 1,16,17,26,27
schedule_c_tax_year String “2019” Depicts which year (2019 or 2020) Borrower is using, for their Gross Income. Only required if schedule_c_2483_form is true
schedule_c_gross_income number 1000.00 Depicts Total Amount of Gross Income (from IRS Form 1040, Schedule C, Line 7). Only required if schedule_c_2483_form is true

HTTP Response Code: 403

Parameter Name Data Type Sample Value Description
detail String Authentication credentials were not provided. The detail of the 403 error response

HTTP Response Code: 404

Parameter Name Data Type Sample Value Description
detail JSON {
“detail”: “Not found.”,
“status_code”: 404
}
If the PPP Loan request is not found

HTTP Response Code: 429

API Call Rate Limits
To maintain reliability and stability within our environments, PPP portal operates with certain API call efficiency guidelines. To ensure effective load balance we continually monitor the API calls to our backend systems and we may throttle requests from developers that are putting unnecessary burden on the system. If the API call rate limit is reached, client will receive an exception. The exception message states: “Request was throttled. Expected available in 1 second”.

Parameter Name Data Type Sample Value Description
detail String Request was throttled. Expected available in 1 second The detail of the 429 error response
status_code Number 429 The HTTP status code

Design Consideration for Client Application

This API provides Status/Details of a specific submitted Loan request. Client may choose to use this API in case they would like to get the latest details of a particular PPP Loan request.

4. Delete PPP Loan Request

This API is used for deleting/withdrawing the PPP Loan request

Please note:

Request type: HTTPS

API Endpoint:

DELETE /api/origination/{slug}/

Request (Sample)


/api/origination/3c00737c-7aa5-4741-93bb-7e4f3e5213de/

Request Parameters

Not Applicable (No request body)

Request Path Parameters

Path Parameter Name Data Type Mandatory/Optional Sample Value Description
slug UUID Mandatory 3c00737c-7aa5-4741-93bb-7e4f3e5213de The UUID of the PPP Loan request

Request Query Parameters

Not Applicable

Request Form Data Parameters

Not Applicable

HTTP Response Code: 204

The request was successfully processed

HTTP Response Code: 403

Parameter Name Data Type Sample Value Description
detail String Authentication credentials were not provided. The detail of the 403 error response

HTTP Response Code: 404

Parameter Name Data Type Sample Value Description
detail String Not found The detail of the 404 error response

HTTP Response Code: 429

API Call Rate Limits
To maintain reliability and stability within our environments, PPP portal operates with certain API call efficiency guidelines. To ensure effective load balance we continually monitor the API calls to our backend systems and we may throttle requests from developers that are putting unnecessary burden on the system. If the API call rate limit is reached, client will receive an exception. The exception message states: “Request was throttled. Expected available in 1 second”.

Parameter Name Data Type Sample Value Description
detail String Request was throttled. Expected available in 1 second The detail of the 429 error response
status_code Number 429 The HTTP status code

Design Consideration for Client Application

Client may use this API to delete PPP Loan request. For any reason, if client would like to delete PPP request, try to call this API as soon as possible

5. Get ALL NAICS Codes

This API fetches the list of ALL NAICS (North American Industry Classification System) Codes

Request type: HTTPS

API Endpoint:

GET /api/naics/

Request (Sample)


/api/naics/

Request Parameters

Not Applicable (No request body)

Request Path Parameters

Not Applicable

Request Query Parameters

Query Parameter Name Data Type Mandatory/Optional Sample Value Description
page Number Optional 1 The page number of the records to be fetched (for pagination)

Request Form Data Parameters

Not Applicable

Response (Sample)


{
    "count": 1057,
    "next": "https://forgiveness.sba.gov/api/naics/?page=2",
    "previous": null,
    "results": [
        {
            "id": 5,
            "code": 722513,
            "description": "Limited-Service Restaurants"
        }
    ]
}

Response Parameters

HTTP Response Code: 200

Parameter Name Data Type Sample Value Description
count Number 1 The total count of the NAICS code
next String https://forgiveness.sba.gov/api/naics/?page=3 The URI of the next set of list of NAICS codes to be fetched. It will be null for last page
previous String https://forgiveness.sba.gov/api/naics/?page=1 The URI of the previous set of NAICS codes to be fetched. It will be null for first page
results JSON Array    
id Number 5 Unique ID within SBA system for NAICS code
code Number 722513 NAICS code
description String Limited-Service Restaurants NAICS code description

HTTP Response Code: 403

Parameter Name Data Type Sample Value Description
detail String Authentication credentials were not provided. The detail of the 403 error response

HTTP Response Code: 429

API Call Rate Limits
To maintain reliability and stability within our environments, PPP portal operates with certain API call efficiency guidelines. To ensure effective load balance we continually monitor the API calls to our backend systems and we may throttle requests from developers that are putting unnecessary burden on the system. If the API call rate limit is reached, client will receive an exception. The exception message states: “Request was throttled. Expected available in 1 second”.

Parameter Name Data Type Sample Value Description
detail String Request was throttled. Expected available in 1 second The detail of the 429 error response
status_code Number 429 The HTTP status code

Design Consideration for Client Application

This API provides list of all NAICS codes.This API supports pagination functionality and if client is designing a UI or batch process to call this API, they may like to have page up and page down feature. Every page returns 50 maximum records.

6. Get NAICS details using NAICS code or Industry description

This API is used for getting details of specific industry classification using NAICS code or Industry description.

Request type: HTTPS

API Endpoint:

GET /api/naics/?code=NNNNNN
GET /api/naics/?description=XXXXXXX

Request (Sample)


/api/naics/?code=111110
/api/naics/?description=restaurant

Request Parameters

Not Applicable (No request body)

Request Path Parameters

Not Applicable

Request Query Parameters

Query Parameter Name Data Type Mandatory/Optional Sample Value Description
code Number Optional 111110 NAICS code
description string Optional restaurant NAICS description

Request Form Data Parameters

Not Applicable

Response (Sample)


{
    "count": 1,
    "next": null,
    "previous": null,
    "results": [
        {
            "id": 5,
            "code": 111110,
            "description": "Soybean Farming"
        }
    ]
}

Response Parameters

HTTP Response Code: 200

Parameter Name Data Type Sample Value Description
count Number 1 The total count of the NAICS code. It value be 1 for search by NAICS code
next String null The URI of the next set of list of NAICS codes to be fetched. It will be null for search by NAICS code or description
previous String null The URI of the previous set of NAICS codes to be fetched. It will be null for search by NAICS code or description
id Number 5 Unique ID within SBA system for NAICS code
code Number 722513 NAICS code
description String Limited-Service Restaurants NAICS code description

HTTP Response Code: 403

Parameter Name Data Type Sample Value Description
detail String Authentication credentials were not provided. The detail of the 403 error response

HTTP Response Code: 404

Parameter Name Data Type Sample Value Description
detail JSON {
“detail”: “Not found.”,
“status_code”: 404
}
If the NAICS code is not found

HTTP Response Code: 429

API Call Rate Limits
To maintain reliability and stability within our environments, PPP portal operates with certain API call efficiency guidelines. To ensure effective load balance we continually monitor the API calls to our backend systems and we may throttle requests from developers that are putting unnecessary burden on the system. If the API call rate limit is reached, client will receive an exception. The exception message states: “Request was throttled. Expected available in 1 second”.

Parameter Name Data Type Sample Value Description
detail String Request was throttled. Expected available in 1 second The detail of the 429 error response
status_code Number 429 The HTTP status code

Design Consideration for Client Application

This API provides Details of a specific NAICS code. Client may choose to use this API in case they would like to get NAICS details for a code.

7. Get ALL Franchise Details

This API fetches the list of ALL Franchises listed in the SBA’s Franchise Directory

Request type: HTTPS

API Endpoint:

GET /api/franchise/

Request (Sample)


/api/franchise/

Request Parameters

Not Applicable (No request body)

Request Path Parameters

Not Applicable

Request Query Parameters

Query Parameter Name Data Type Mandatory/Optional Sample Value Description
page Number Optional 1 The page number of the records to be fetched (for pagination)

Request Form Data Parameters

Not Applicable

Response (Sample)


{
    "count": 1057,
    "next": "https://forgiveness.sba.gov/api/franchise/?page=3",
    "previous": "https://forgiveness.sba.gov/api/franchise/?page=1",
    "results": [
        {
            "id": 4,
            "code": "S0011",
            "description": "123 FIT"
        }
    ]
}

Response Parameters

HTTP Response Code: 200

Parameter Name Data Type Sample Value Description
count Number 1000 The total count of the Franchise list
next String null The URI of the next set of Franchise list to be fetched. It will be null for last page
previous String null The URI of the previous set of Franchise details to be fetched. It will be null for first page
results JSON Array    
id Number 4 Unique id of Franchise in SBA system
code String S0011 Franchise code
description String 123 FIT Franchise description

HTTP Response Code: 403

Parameter Name Data Type Sample Value Description
detail String Authentication credentials were not provided. The detail of the 403 error response

HTTP Response Code: 429

API Call Rate Limits
To maintain reliability and stability within our environments, PPP portal operates with certain API call efficiency guidelines. To ensure effective load balance we continually monitor the API calls to our backend systems and we may throttle requests from developers that are putting unnecessary burden on the system. If the API call rate limit is reached, client will receive an exception. The exception message states: “Request was throttled. Expected available in 1 second”.

Parameter Name Data Type Sample Value Description
detail String Request was throttled. Expected available in 1 second The detail of the 429 error response
status_code Number 429 The HTTP status code

Design Consideration for Client Application

This API provides list of all Franchises regsitered with SBA. This API supports pagination functionality and if client is designing a UI or batch process to call this API, they may like to have page up and page down feature. Every page returns 50 maximum records

8. Get Franchise Details using Franchise code or name

This API is used for getting details of specific Franchise listed in the SBA’s Franchise Directory

Request type: HTTPS

API Endpoint:

GET /api/franchise/?code=xxxxx
GET /api/franchise/?description=xxxxx

Request (Sample)


/api/franchise/?code=S0011
/api/franchise/?description=subway

Request Parameters

Not Applicable (No request body)

Request Path Parameters

Not Applicable

Request Query Parameters

Query Parameter Name Data Type Mandatory/Optional Sample Value Description
code String Optional S0011 Franchise code
description String Optional subway Franchise name

Request Form Data Parameters

Not Applicable

Response (Sample)


{
    "count": 1,
    "next": null,
    "previous": null,
    "results": [
        {
            "id": 1,
            "code": "S3493",
            "description": "abc"
        }
    ]
}

Response Parameters

HTTP Response Code: 200

Parameter Name Data Type Sample Value Description
count Number 1 The total count of the Franchise list
next String null The URI of the next set of Franchise list to be fetched. It will be null for search by id
previous String null The URI of the previous set of Franchise details to be fetched. It will be null for search by id
id Number 4 Unique id of Franchise code in SBA system of records
code String S0011 Franchise code
description String 123 FIIT Franchise description

HTTP Response Code: 403

Parameter Name Data Type Sample Value Description
detail String Authentication credentials were not provided. The detail of the 403 error response

HTTP Response Code: 404

Parameter Name Data Type Sample Value Description
detail JSON {
“detail”: “Not found.”,
“status_code”: 404
}
If the franchise is not found

HTTP Response Code: 429

API Call Rate Limits
To maintain reliability and stability within our environments, PPP portal operates with certain API call efficiency guidelines. To ensure effective load balance we continually monitor the API calls to our backend systems and we may throttle requests from developers that are putting unnecessary burden on the system. If the API call rate limit is reached, client will receive an exception. The exception message states: “Request was throttled. Expected available in 1 second”.

Parameter Name Data Type Sample Value Description
detail String Request was throttled. Expected available in 1 second The detail of the 429 error response
status_code Number 429 The HTTP status code

Design Consideration for Client Application

This API provides Details of a specific Franchise code or name. Client may choose to use this API in case they would like to get the details of a particular Franchise.

9. Get eTran PPP Loan Validation

This API provides fully disbursed PPP Loan info (first draw or second draw) based on SBA number as input. API users may use this end point to validate first draw loan details before submitting second draw loan application.

Request type: HTTPS

API Endpoint:

GET /api/etran_ppp_validation/?sba_number=NNNNNNNNNN

Request (Sample)


/api/etran_ppp_validation/?sba_number=5279100030

Request Parameters

Not Applicable (No request body)

Request Path Parameters

Not Applicable (Mo Request Path Parameters)

Request Query Parameters

sba_number=SBA_Number

Request Form Data Parameters

Not Applicable

Response (Sample)


{
    "count": 1,
    "next": null,
    "previous": null,
    "results": [
        {
            "sba_number": 5279100030,
            "etran_notional_amount": 900000.0,
            "etran_busnm": null,
            "address1": "",
            "address2": ""
	    "tin_type": 0
	    "etran_hold_flag_indicator": true
        }
    ]
}

Response Parameters

HTTP Response Code: 200

Parameter Name Data Type Sample Value Description
count Number 1 The total count of first draw PPP Loan for SBA number.
next String null The URI of the next set of list of PPP Loans to be fetched. It will be null
previous String null The URI of the previous set of PPP Loan to be fetched. It will be null
results JSON Array    
sba_number number 5279100030 Unique ID within SBA system for loan
etran_notional_amount Number 900000.0 Loan Amount
etran_busnm String null eTran Busniness Name
address1 String ”” Address Line 1 of the Borrower
address2 String ”” Address Line 2 of the Borrower
tin_type Number 0 TIN Type of Borrower/Business used during First draw - EIN=0, SSN=1, ITIN=4
etran_hold_flag_indicator boolean true Whether first draw loan is on hold by SBA

HTTP Response Code: 403

Parameter Name Data Type Sample Value Description
detail String Authentication credentials were not provided. The detail of the 403 error response

HTTP Response Code: 404

Parameter Name Data Type Sample Value Description
detail JSON {
“detail”: “Not found.”,
“status_code”: 404
}
If the sba number is not found

HTTP Response Code: 429

API Call Rate Limits
To maintain reliability and stability within our environments, PPP portal operates with certain API call efficiency guidelines. To ensure effective load balance we continually monitor the API calls to our backend systems and we may throttle requests from developers that are putting unnecessary burden on the system. If the API call rate limit is reached, client will receive an exception. The exception message states: “Request was throttled. Expected available in 1 second”.

Parameter Name Data Type Sample Value Description
detail String Request was throttled. Expected available in 1 second The detail of the 429 error response
status_code Number 429 The HTTP status code

Design Consideration for Client Application

This API provides the ability to validate the First draw PPP Loan before submitting a second draw PPP loan. If the First draw Loan has a hold, Second Draw submissions will be moved automatically to a research status (loan will move from Pending validation to Further Research Required status)

10. Get Validated and Standardized Address

This API is used to validate and get standardized addresses along with Zip+4. API users may use it to ensure addresses are valid before submitting Loan request to SBA and normalize street address formats (Rd, St, Alley etc). We recommend all address be valided before submission. You may still submit an orginiation request if the address fails validation but has been confirm valid by the lender. In these scenarios, the City and Zip will be validated during submission to ETRAN. US territories may also fail validation via this API but can be submitted with valid two letter state and zip code.

Request type: HTTPS

API Endpoint:

GET /api/address_validation?address_1=XXXXX&address_2=yyyyy&city=zzzz&state=sssss&zip_code=NNNNN

Request (Sample)


/api/address_validation?address_1=101 ABC Lane&address_2&city=Newark&state=delaware&zip_code=19701

Request Parameters

Not Applicable (No request body)

Request Path Parameters

Not Applicable

Request Query Parameters

Query Parameter Name Data Type Mandatory/Optional Sample Value Description
address_1 String Mandatory 1001 ABC Lane Address Line 1
address_2 String Optional Suite A Address Line 2
city String Mandatory Newark City
state String Mandatory Delaware State
zip_code Number Mandatory 19701 Zip code

Request Form Data Parameters

Not Applicable

Response (Sample)



    {
        "input_id": null,
        "input_index": 0,
        "candidate_index": 0,
        "addressee": null,
        "delivery_line_1": "1001 ABC Ln",
        "delivery_line_2": null,
        "last_line": "Newark DE 19701-9420",
        "delivery_point_barcode": "197019420056",
        "components": {
            "urbanization": null,
            "primary_number": "1305",
            "street_name": "Madison",
            "street_predirection": null,
            "street_postdirection": null,
            "street_suffix": "Ln",
            "secondary_number": null,
            "secondary_designator": null,
            "extra_secondary_number": null,
            "extra_secondary_designator": null,
            "pmb_designator": null,
            "pmb_number": null,
            "city_name": "Newark",
            "default_city_name": "Newark",
            "state_abbreviation": "DE",
            "zipcode": "19701",
            "plus4_code": "9420",
            "delivery_point": "05",
            "delivery_point_check_digit": "6"
        },
        "metadata": {
            "record_type": "S",
            "zip_type": "Standard",
            "county_fips": "10003",
            "county_name": "New Castle",
            "carrier_route": "R013",
            "congressional_district": "AL",
            "building_default_indicator": null,
            "rdi": "Residential",
            "elot_sequence": "0115",
            "elot_sort": "D",
            "latitude": 30.77354,
            "longitude": -70.70868,
            "precision": "Zip7",
            "time_zone": "Eastern",
            "utc_offset": -5,
            "obeys_dst": true,
            "is_ews_match": null
        },
        "analysis": {
            "dpv_match_code": "Y",
            "dpv_footnotes": "AABB",
            "cmra": "N",
            "vacant": "N",
            "active": "Y",
            "footnotes": "N#",
            "lacs_link_code": null,
            "lacs_link_indicator": null,
            "is_suite_link_match": null
        }
    }
]

Response Parameters

HTTP Response Code: 200

Parameter Name Data Type Sample Value Description
input_id String null Any unique identifier that you use to reference the input address; the output will be identical to the input.
input_index Number 0 The order in which this address was submitted with the others
candidate_index Number 0 An input address can match multiple valid addresses. This ties the candidates to the input index.(e.g., “1 Rosedale Street Baltimore Maryland” will return multiple candidates.)
addressee String null The name of the person or company at this address. This value is taken directly from the addressee input field. Very rarely, this field might be filled automatically based on the USPS address record.
delivery_line_1 String 1305 ABC Lane Contains the first delivery line (usually the street address). This can include any of the following:urbanization (Puerto Rico only), primary number, street predirection, street name, street suffix, street postdirection, secondary designator, secondary number, extra secondary designator, extra secondary number, PMB designator, PMB number
delivery_line_2 String Null The second delivery line (if needed). It is common for this field to remain empty, but it may contain a private mailbox number.
last_line String Null City, state, and ZIP Code combined
delivery_point_barcode String Null 12-digit POSTNET™ barcode; consists of 5-digit ZIP Code, 4-digit add-on code, 2-digit delivery point, and 1-digit check digit.
components object   standardized address fields, see sample
metadata object   metadata of address fields, see sample
analysis object   analysis of address fields, see sample.

HTTP Response Code: 403

Parameter Name Data Type Sample Value Description
detail String Authentication credentials were not provided. The detail of the 403 error response

HTTP Response Code: 404

Parameter Name Data Type Sample Value Description
detail JSON {
“detail”: “Not found.”,
“status_code”: 404
}
If the address is not found

HTTP Response Code: 429

API Call Rate Limits
To maintain reliability and stability within our environments, PPP portal operates with certain API call efficiency guidelines. To ensure effective load balance we continually monitor the API calls to our backend systems and we may throttle requests from developers that are putting unnecessary burden on the system. If the API call rate limit is reached, client will receive an exception. The exception message states: “Request was throttled. Expected available in 1 second”.

Parameter Name Data Type Sample Value Description
detail String Request was throttled. Expected available in 1 second The detail of the 429 error response
status_code Number 429 The HTTP status code

Design Consideration for Client Application

This API is used to validate and get standerdized address along with Zip+4. API users may use it to ensure address is valid before submitting Loan request to SBA. Please note - This API is optional and is not expected to replace your existing address validation & standardization routines. Please donot use this API for type ahead functionaility within your application.

11. Get EIDL Loan Validation

This API validates EIDL Loan number.

Request type: HTTPS

API Endpoint:

GET /api/etran_eidl_loan_validation?eidl_loan_number=NNNNNNNNNN

Request (Sample)


/api/etran_eidl_loan_validation?eidl_loan_number=4321110000

Request Parameters

Not Applicable (No request body)

Request Path Parameters

Not Applicable (No Request Path Parameters)

Request Query Parameters

Query Parameter Name Data Type Mandatory/Optional Sample Value Description
eidl_loan_number number Mandatory 4321110000 EIDL Loan number

Request Form Data Parameters

Not Applicable

Response (Sample)


{
    "count": 1,
    "next": null,
    "previous": null,
    "results": [
        {
            "eidl_loan_number": "4321110000",
            "amount": 2000.0,
        }
    ]
}

Response Parameters

HTTP Response Code: 200

Parameter Name Data Type Sample Value Description
count Number 1 The total count of EIDL Loan number. It will always be 1
next String null The URI of the next set of list of EIDL Loans to be fetched. It will be null
previous String null The URI of the previous set of EIDL loans to be fetched. It will be null
results JSON Array    
eidl_loan_number String “4321110000” Unique ID within SBA system for loan
etran_notional_amount Number 900000.0 EIDL Loan Amount

HTTP Response Code: 403

Parameter Name Data Type Sample Value Description
detail String Authentication credentials were not provided. The detail of the 403 error response

HTTP Response Code: 404

Parameter Name Data Type Sample Value Description
detail JSON {
“detail”: “Not found.”,
“status_code”: 404
}
If the EIDL Loan number is not found

HTTP Response Code: 429

API Call Rate Limits
To maintain reliability and stability within our environments, PPP portal operates with certain API call efficiency guidelines. To ensure effective load balance we continually monitor the API calls to our backend systems and we may throttle requests from developers that are putting unnecessary burden on the system. If the API call rate limit is reached, client will receive an exception. The exception message states: “Request was throttled. Expected available in 1 second”.

Parameter Name Data Type Sample Value Description
detail String Request was throttled. Expected available in 1 second The detail of the 429 error response
status_code Number 429 The HTTP status code

Design Consideration for Client Application

This API provides the ability to validate the EIDL Loan. Applicable for first draw loans only.