Create ein

Opens the EIN application and answers what it owes.

POST /v1/company/ein

Addresshttps://api.hanzo.ai/v1/company/ein
MethodPOST
Operationpost_company_ein
AuthAuthorization: Bearer $HANZO_API_KEY

Opens the EIN application and answers what it owes.

The answer states whether it can be filed ONLINE, because that is the fact deciding whether the customer waits a sitting or several weeks — and it names each form with what that form is for, so nobody has to already know what an SS-4 is to understand why they are signing one.

Request

7 fields, body application/json (required).

FieldInTypeRequiredDescription
expeditedbodyboolean—Expedited asks for prioritised handling.
naicsbodystring—NAICS is the six-digit code for what the business does.
responsiblebodycompany.Responsible—
responsible.countrybodystring—Country is where they reside, ISO 3166-1 alpha-2.
responsible.emailbodystring—Email reaches them for signature.
responsible.namebodystring—Name is their full legal name as the IRS will hold it.
responsible.usTaxIdbodyboolean—USTaxID reports that they hold an SSN or ITIN.

Response

StatusBodyMeaning
200company.EINok
defaultproblem-detailsrefused

200 body — 15 fields.

FieldInTypeAlwaysDescription
expeditedbodyboolean—Expedited reports that prioritised handling was asked for.
formsbodycompany.Form[]—Forms are the forms this application owes, with what each is for.
forms[].codebodystring—Code is the IRS designation, e.g. "SS-4".
forms[].namebodystring—Name is the form's own title, so a reader need not already know the code.
forms[].signedbodyboolean—Signed reports whether we hold the signature.
forms[].whybodystring—Why states what this form is for in this application — the same form is owed for different reasons on different paths.
naicsbodystring—NAICS is the six-digit code for what the business does.
numberbodystring—Number is the issued EIN, absent until the IRS issues it.
onlinebodyboolean—Online reports that this application can be filed with the IRS online and issued in a sitting, rather than signed and posted.
responsiblebodycompany.Responsible—
responsible.countrybodystring—Country is where they reside, ISO 3166-1 alpha-2.
responsible.emailbodystring—Email reaches them for signature.
responsible.namebodystring—Name is their full legal name as the IRS will hold it.
responsible.usTaxIdbodyboolean—USTaxID reports that they hold an SSN or ITIN.
statusbodystring—Status is how far it has got.

Failure carries the platform error shape — see Errors.

Examples

hanzo company ein
import { Configuration, CompanyApi } from 'hanzoai';

const api = new CompanyApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.postCompanyEin({ expedited: false, naics: "<naics>" });
from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import CompanyApi

client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = CompanyApi(client).post_company_ein(expedited=False, naics="<naics>")
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.CompanyAPI.PostCompanyEin(context.Background()).Execute()
if err != nil {
	return err
}
use hanzo_client::apis::{configuration::Configuration, company_api};

let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();

let result = company_api::post_company_ein(&cfg, Default::default()).await?;
import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.CompanyApi;

ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));

var result = new CompanyApi(client).postCompanyEin();
curl -X POST https://api.hanzo.ai/v1/company/ein \
  -H "Authorization: Bearer $HANZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
       "expedited": false,
       "naics": "<naics>"
     }'

MCP reaches company through the company tool, which names its 22 operations with its own verbs — this one among them, under a name only MCP declares. describe explains any of them:

curl -X POST https://api.hanzo.ai/v1/mcp \
  -H "Content-Type: application/json" \
  -d '{
       "jsonrpc": "2.0",
       "id": 1,
       "method": "tools/call",
       "params": {
         "name": "describe",
         "arguments": {
           "op": "list_companies"
         }
       }
     }'

Company API · All Hanzo APIs · Interactive reference

Was this page useful?