InfoCert Company API
The company API from InfoCert — 7 operation(s) for company.
The company API from InfoCert — 7 operation(s) for company.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/infocert:infocert-company-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Infocert Company API
version: 1.0.4
license:
name: Infocert
description: 'Operations tagged company across 2 of this provider''s published API definitions: infocert-legalinvoice-openapi.yml, infocert-legalinvoice-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.infocert.digital/einvoicing/sdigate/v1
basePath: /identification/afm/v1
security:
- apiKey: []
tags:
- name: Company
paths:
/companies/bulk:
post:
summary: Add a bulk of companies
tags:
- Company
responses:
'207':
$ref: '#/components/responses/207Multistatus'
'403':
$ref: '#/components/responses/403ForbiddenError'
x-amazon-apigateway-request-validator: Validate body, query string parameters, and headers
x-amazon-apigateway-integration:
uri: https://lbhublicoll.infocert.it/lbhublint/rest/companies/bulk
responses:
default:
statusCode: '200'
requestParameters:
integration.request.header.Authorization: '''Basic dGVzdHVzZXIwMTphc2RmIWxrQQ=='''
passthroughBehavior: when_no_match
httpMethod: POST
type: http_proxy
requestBody:
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/requestCompany'
description: A list of companies to create.
operationId: postCompaniesBulk
x-operation-id-source: derived
servers:
- url: https://api.infocert.digital/einvoicing/sdigate/v1
/companies:
post:
summary: Create a new company
tags:
- Company
responses:
'201':
description: 'The resource has been successfully and correctly created.
'
content:
application/json:
schema:
$ref: '#/components/schemas/companyId'
'400':
$ref: '#/components/responses/400BadRequestError'
'403':
$ref: '#/components/responses/403ForbiddenError'
'422':
$ref: '#/components/responses/422UnprocessableEntityError'
x-amazon-apigateway-request-validator: Validate body, query string parameters, and headers
x-amazon-apigateway-integration:
uri: https://lbhublicoll.infocert.it/lbhublint/rest/companies
responses:
default:
statusCode: '200'
requestParameters:
integration.request.header.Authorization: '''Basic dGVzdHVzZXIwMTphc2RmIWxrQQ=='''
passthroughBehavior: when_no_match
httpMethod: POST
type: http_proxy
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/requestCompany'
description: An object describing a company.
operationId: postCompanies
x-operation-id-source: derived
get:
summary: Get all companies
tags:
- Company
parameters:
- $ref: '#/components/parameters/companyGroupCode'
- name: creata_dopo
in: query
description: 'Limit the results to the companies which creation date is not before the one provided.
`creata_dopo` should be before `creata_prima` when the latter is also provided.
'
required: false
schema:
type: string
format: date-time
- name: creata_prima
in: query
description: 'Limit the result to the companies which creation date is not later than the one provided.
`creata_prima` should be bigger that `creata_dopo` when the latter is also provided.
'
required: false
schema:
type: string
format: date-time
- $ref: '#/components/parameters/paginationIndex'
- $ref: '#/components/parameters/paginationItemsPerPage'
responses:
'200':
description: 'A list containing the selected companies.
'
content:
application/json:
schema:
$ref: '#/components/schemas/paginatedCompanies'
'403':
$ref: '#/components/responses/403ForbiddenError'
x-amazon-apigateway-request-validator: Validate body, query string parameters, and headers
x-amazon-apigateway-integration:
uri: https://lbhublicoll.infocert.it/lbhublint/rest/companies
responses:
default:
statusCode: '200'
requestParameters:
integration.request.querystring.company_group_code: method.request.querystring.company_group_code
integration.request.querystring.creata_dopo: method.request.querystring.creata_dopo
integration.request.querystring.creata_prima: method.request.querystring.creata_prima
integration.request.querystring.indice_pagina: method.request.querystring.indice_pagina
integration.request.querystring.oggetti_per_pagina: method.request.querystring.oggetti_per_pagina
integration.request.header.Authorization: '''Basic dGVzdHVzZXIwMTphc2RmIWxrQQ=='''
passthroughBehavior: when_no_match
httpMethod: GET
type: http_proxy
operationId: getCompanies
x-operation-id-source: derived
servers:
- url: https://api.infocert.digital/einvoicing/sdigate/v1
/companies/{companyId}:
get:
tags:
- Company
summary: The details of a company given its identification
parameters:
- $ref: '#/components/parameters/companyId'
responses:
'200':
description: 'The company has been correctly retrieved.
'
content:
application/json:
schema:
$ref: '#/components/schemas/company'
'403':
$ref: '#/components/responses/403ForbiddenError'
'404':
$ref: '#/components/responses/404NotFoundError'
x-amazon-apigateway-request-validator: Validate body, query string parameters, and headers
x-amazon-apigateway-integration:
uri: https://lbhublicoll.infocert.it/lbhublint/rest/companies/{companyId}
responses:
default:
statusCode: '200'
requestParameters:
integration.request.path.companyId: method.request.path.companyId
integration.request.header.Authorization: '''Basic dGVzdHVzZXIwMTphc2RmIWxrQQ=='''
passthroughBehavior: when_no_match
httpMethod: GET
type: http_proxy
operationId: getCompaniesByCompanyId
x-operation-id-source: derived
delete:
summary: Delete an existing company
tags:
- Company
parameters:
- $ref: '#/components/parameters/companyId'
responses:
'204':
$ref: '#/components/responses/204NoContent'
'403':
$ref: '#/components/responses/403ForbiddenError'
x-amazon-apigateway-request-validator: Validate body, query string parameters, and headers
x-amazon-apigateway-integration:
uri: https://lbhublicoll.infocert.it/lbhublint/rest/companies/{companyId}
responses:
default:
statusCode: '200'
requestParameters:
integration.request.path.companyId: method.request.path.companyId
integration.request.header.Authorization: '''Basic dGVzdHVzZXIwMTphc2RmIWxrQQ=='''
passthroughBehavior: when_no_match
httpMethod: DELETE
type: http_proxy
operationId: deleteCompaniesByCompanyId
x-operation-id-source: derived
servers:
- url: https://api.infocert.digital/einvoicing/sdigate/v1
/companies/byCode/{vatOrVies}:
get:
tags:
- Company
summary: The details of a company given its VAT number or VIES
parameters:
- name: vatOrVies
in: path
description: The VAT or VIES identification number.
required: true
schema:
type: string
- $ref: '#/components/parameters/companyGroupCode'
- $ref: '#/components/parameters/idPaese'
responses:
'200':
description: 'The company has been correctly retrieved.
'
content:
application/json:
schema:
$ref: '#/components/schemas/company'
'403':
$ref: '#/components/responses/403ForbiddenError'
'404':
$ref: '#/components/responses/404NotFoundError'
x-amazon-apigateway-request-validator: Validate body, query string parameters, and headers
x-amazon-apigateway-integration:
uri: https://lbhublicoll.infocert.it/lbhublint/rest/companies/byCode/{vatOrVies}
responses:
default:
statusCode: '200'
requestParameters:
integration.request.path.vatOrVies: method.request.path.vatOrVies
integration.request.header.Authorization: '''Basic dGVzdHVzZXIwMTphc2RmIWxrQQ=='''
passthroughBehavior: when_no_match
httpMethod: GET
type: http_proxy
operationId: getCompaniesByCodeByVatOrVies
x-operation-id-source: derived
servers:
- url: https://api.infocert.digital/einvoicing/sdigate/v1
/companies/byCode/{vatOrVies}/revoca:
post:
summary: Revoke every product associated with the vatOrVies
tags:
- Company
parameters:
- name: vatOrVies
in: path
description: The VAT or VIES identification number.
required: true
schema:
type: string
- $ref: '#/components/parameters/revocationType'
- $ref: '#/components/parameters/idPaese'
responses:
'200':
description: 'The list of productId correctly revoked.
'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/productId'
'400':
$ref: '#/components/responses/400BadRequestError'
'401':
$ref: '#/components/responses/403ForbiddenError'
'403':
$ref: '#/components/responses/403ForbiddenError'
x-amazon-apigateway-request-validator: Validate body, query string parameters, and headers
x-amazon-apigateway-integration:
uri: https://lbhublicoll.infocert.it/lbhublint/rest/companies/byCode/{vatOrVies}/revoca
responses:
default:
statusCode: '200'
requestParameters:
integration.request.path.vatOrVies: method.request.path.vatOrVies
integration.request.querystring.revocationType: method.request.querystring.revocationType
integration.request.querystring.idPaese: method.request.querystring.idPaese
integration.request.header.Authorization: '''Basic dGVzdHVzZXIwMTphc2RmIWxrQQ=='''
passthroughBehavior: when_no_match
httpMethod: POST
type: http_proxy
operationId: postCompaniesByCodeByVatOrViesRevoca
x-operation-id-source: derived
servers:
- url: https://api.infocert.digital/einvoicing/sdigate/v1
/companies/{companyId}/details:
get:
summary: Get the details of the company using the productId (ex. M01234)
tags:
- Company
parameters:
- $ref: '#/components/parameters/companyId'
responses:
'200':
description: 'The requested company.
'
content:
application/json:
schema:
$ref: '#/components/schemas/companyDetails'
'403':
$ref: '#/components/responses/403ForbiddenError'
x-amazon-apigateway-request-validator: Validate body, query string parameters, and headers
x-amazon-apigateway-integration:
uri: https://lbhublicoll.infocert.it/lbhublint/rest/companies/{companyId}/details
responses:
default:
statusCode: '200'
requestParameters:
integration.request.path.companyId: method.request.path.companyId
integration.request.header.Authorization: '''Basic dGVzdHVzZXIwMTphc2RmIWxrQQ=='''
passthroughBehavior: when_no_match
httpMethod: GET
type: http_proxy
operationId: getCompaniesByCompanyIdDetails
x-operation-id-source: derived
servers:
- url: https://api.infocert.digital/einvoicing/sdigate/v1
/companies/registerCompany:
post:
summary: Create a new company
tags:
- Company
responses:
'201':
description: 'The resource has been successfully and correctly created.
'
content:
application/json:
schema:
$ref: '#/components/schemas/companyId'
'400':
$ref: '#/components/responses/400BadRequestError'
'403':
$ref: '#/components/responses/403ForbiddenError'
'422':
$ref: '#/components/responses/422UnprocessableEntityError'
x-amazon-apigateway-request-validator: Validate body, query string parameters, and headers
x-amazon-apigateway-integration:
uri: https://lbhublicoll.infocert.it/lbhublint/rest/companies/registerCompany
responses:
default:
statusCode: '200'
requestParameters:
integration.request.header.Authorization: '''Basic dGVzdHVzZXIwMTphc2RmIWxrQQ=='''
passthroughBehavior: when_no_match
httpMethod: POST
type: http_proxy
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/requestRegisterCompany'
description: An object describing a company.
operationId: postCompaniesRegisterCompany
x-operation-id-source: derived
servers:
- url: https://api.infocert.digital/einvoicing/sdigate/v1
components:
schemas:
richiestaDotazioniInfocert:
type: object
properties:
legalDoc:
type: boolean
description: "True if a standard storage request is required, false otherwise. \n"
requestCompany:
type: object
required:
- autorizzazioni
- nome
- partitaIva
- idPaese
properties:
autorizzazioni:
$ref: '#/components/schemas/autorizzazioni'
companyGroupCode:
type: string
example: 83acc913-5266-452f-975a-44122feb2a9c
contatoreFatturazione:
example: 0
type: integer
externalCompanyId:
type: string
description: "\"An external identification code of the company.\" \n"
nome:
type: string
example: ACME S.p.A.
partitaIva:
type: string
example: 01234567890
signInvoice:
type: boolean
description: "True if every invoice associated with the company has to be signed, false otherwise. The default value is true. \n"
useInvoiceName:
type: boolean
example: false
description: "True if the SOGEI file name has to be used without any change, false otherwise. The default value is false. \n"
idPaese:
type: string
example: IT
description: "The country identification code. \n"
pagination:
type: object
required:
- index
- pagesCount
- itemsCount
- itemsPerPage
properties:
index:
description: The 0-based index of the returned page.
type: integer
example: 0
minimum: 0
pagesCount:
description: The total number of available pages.
type: integer
example: 50
minimum: 1
itemsCount:
description: 'The total number of items matching the search criteria. Please, pay attention that this is not the number of items in this page, rather than the total number of items potentially available.
'
type: integer
example: 4254
minimum: 0
itemsPerPage:
description: 'How many itmes are included in a single page.
'
type: integer
example: 20
minimum: 1
anagraficaRichiedente:
required:
- email
type: object
properties:
externalUserId:
type: string
example: A0123
description: The unique external identification code.
nomeECognome:
type: string
example: Mario Bianchi
telefono:
type: string
example: 3201112233
email:
type: string
example: m.bianchi@xxx.com
anagraficaCompany:
required:
- productId
type: object
properties:
externalCompanyId:
type: string
description: '"An external identification code of the company."
'
nome:
type: string
description: 'The business name of the company.
'
example: Company Test s.r.l.
indirizzo:
type: string
example: via milano
numeroCivico:
type: string
example: '33'
cap:
type: string
example: '22100'
citta:
type: string
example: Milano
provincia:
type: string
example: Milano
nazione:
type: string
example: Italia
partitaIva:
type: string
example: '7945211000'
description: At least one field between partitaIva and codiceFiscale has to be set.
codiceFiscale:
type: string
example: '7945211000'
description: At least one field between partitaIva and codiceFiscale has to be set.
productId:
type: string
example: INTERMEDIARIO_LEGALINVOICE_PROFESSIONAL
idPaese:
type: string
example: IT
description: "The country identification code, the default value is 'IT'. \n"
contatoreFatturazione:
example: 0
type: integer
signInvoice:
type: boolean
description: 'True if every invoice associated with the company has to be signed, false otherwise. The default value is true.
'
useInvoiceName:
type: boolean
example: false
description: "True if the SOGEI file name has to be used without any change, false otherwise. The default value is false. \n"
companyDetails:
type: object
properties:
externalCompanyId:
type: string
example: 19A69R8
description: '"The external identification code of the company."
'
externalUserId:
type: string
example: 15G69R8
description: "\"The external identification code of the user.\" \n"
nome:
type: string
description: 'The business name of the company.
'
example: Company Test s.r.l.
indirizzo:
type: string
example: via milano
description: The company address.
numeroCivico:
type: string
example: '33'
description: The company street number.
cap:
type: string
example: '22100'
description: The company ZIP code.
citta:
type: string
example: Milano
description: The company city.
provincia:
type: string
example: MI
description: The company district.
nazione:
type: string
example: Italia
description: The company country.
partitaIva:
type: string
example: '7945211000'
description: At least one field between partitaIva and codiceFiscale has to be set.
codiceFiscale:
type: string
example: '7945211000'
description: At least one field between partitaIva and codiceFiscale has to be set.
productId:
type: string
example: ISP_LEGALINVOICE_PROFESSIONAL
idPaese:
type: string
example: IT
description: "The country identification code, the default value is 'IT'. \n"
codiceIntermediario:
type: string
example: '160000'
description: "The intermediary code. \n"
nickname:
type: string
example: m.rossi@gmail.com
nomeRichiedente:
type: string
example: MARCO
description: "The applicant name. \n"
cognomeRichiedente:
type: string
example: ROSSI
description: "The applicant username. \n"
codiceFiscaleRichiedente:
type: string
example: RSSMRC80A01F205Z
description: "The applicant taxCode. \n"
emailRichiedente:
type: string
example: marcoRossi@gmail.com
description: "The applicant residence email. \n"
indirizzoRichiedente:
type: string
example: via Milano
description: "The applicant residence address. \n"
provinciaRichiedente:
type: string
example: MI
description: "The applicant residence district. \n"
numeroCivicoRichiedente:
type: string
example: '33'
description: "The applicant residence street number. \n"
capRichiedente:
type: string
example: '20100'
description: "The applicant residence ZIP code. \n"
cittaRichiedente:
type: string
example: Milano
description: "The applicant residence city. \n"
codiceAccount:
type: string
example: PECICS
expirationDate:
type: string
example: 2020-06-08
status:
type: string
example: EV
management:
type: string
example: X
type:
type: string
example: LEGALINVOICE_START
unit:
type: string
example: ECOMMERCE
identities:
type: object
example:
key1: customValue1
key2: customValue2
error:
description: 'This error object isused across the API to report all the type of errors. It adheres to the guidelines specified [here](https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).
'
type: object
properties:
code:
description: "The value for the \"code\" name/value pair is a language-independent string. Its value is a human-readable service-defined error code. This code serves as a more specific indicator of the error than the HTTP error code specified in the response. A relatively small number of possible values for \"code\" are defined and all clients MUST be capable of handling all of them. Most services will require a much larger number of more specific error codes, which are not interesting to all clients. These error codes are be exposed in the \"innererror\" name/value pair. \n"
type: string
message:
description: "The value for the \"message\" name/value pair is a human-readable representation of the error. It is intended as an aid to developers and is not suitable for exposure to end users. \n"
type: string
requestRegisterCompany:
type: object
properties:
companyGroupCode:
type: string
example: anagraficaTest01
identities:
$ref: '#/components/schemas/identities'
anagraficaCompany:
$ref: '#/components/schemas/anagraficaCompany'
anagraficaRichiedente:
$ref: '#/components/schemas/anagraficaRichiedente'
richiestaDotazioniInfocert:
$ref: '#/components/schemas/richiestaDotazioniInfocert'
productId:
type: object
properties:
productId:
type: string
example: M12345
companyId:
type: object
properties:
companyId:
type: string
example: 83
autorizzazioni:
type: object
properties:
cicloAttivo:
type: boolean
description: 'TRUE authorizes the company to have access to the active flow, while FALSE denies the access.
'
cicloPassivo:
type: boolean
description: 'TRUE authorizes the company to have access to the passive flow, while FALSE denies the access.
'
spesometro:
type: boolean
description: 'TRUE authorizes the company to have access to the ''spesometro'', while FALSE denies the access.
'
company:
type: object
required:
- nome
- partitaIva
- companyId
properties:
autorizzazioni:
$ref: '#/components/schemas/autorizzazioni'
companyGroupCode:
type: string
example: 83acc913-5266-452f-975a-44122feb2a9c
companyId:
description: The unique identifier of the company.
example: '832781479'
type: string
contatoreFatturazione:
example: 0
type: integer
contatoreFatturazionePassivo:
example: 0
type: integer
contatoreFatturazioneAnnuale:
example: 0
type: integer
contatoreFatturazioneAnnualePassivo:
example: 0
type: integer
contatoreFatturazioneMensile:
example: 0
type: integer
contatoreFatturazioneMensilePassivo:
example: 0
type: integer
externalCompanyId:
type: string
description: "\"An external identification code of the company.\" \n"
nome:
type: string
example: ACME S.p.A.
partitaIva:
type: string
example: 01234567890
signInvoice:
type: boolean
description: 'True if every invoice associated with the company has to be signed, false otherwise. The default value is true.
'
stato:
type: string
example: in elaborazione
useInvoiceName:
type: boolean
example: true
idPaese:
type: string
example: IT
description: "The country identification code. \n"
paginatedCompanies:
type: object
required:
- data
- pagination
properties:
data:
type: array
items:
$ref: '#/components/schemas/company'
pagination:
$ref: '#/components/schemas/pagination'
parameters:
paginationItemsPerPage:
name: oggetti_per_pagina
in: query
description: "How many itmes should be included in a single page.\nIf not specified, a sensible default will be applied. \n"
required: false
schema:
type: integer
minimum: 1
idPaese:
name: idPaese
in: query
description: 'The identification code of the country. The default value is ''IT''.
'
required: false
schema:
type: string
paginationIndex:
name: indice_pagina
in: query
description: 'The 0-based index of the page that should be returned. If not specified, the first page available, always at index 0, is returned.
'
required: false
schema:
type: integer
minimum: 0
companyId:
name: companyId
in: path
description: 'The ID of the company on which the operation will be executed.
'
required: true
schema:
type: string
revocationType:
name: revocationType
in: query
description: 'Specify the revocation type: MIGRAZIONE or REVOCA. The default value is REVOCA.
'
required: false
schema:
type: string
enum:
- MIGRAZIONE
- REVOCA
companyGroupCode:
in: query
name: company_group_code
schema:
type: string
responses:
403ForbiddenError:
description: 'The authentication credentials are insufficient or incorrect to grant access.
'
404NotFoundError:
description: "It was impossible to find any resource matching the specified search criteria. \n"
400BadRequestError:
description: 'The request is malformed, cannot be understood.
'
content:
application/json:
schema:
$ref: '#/components/schemas/error'
207Multistatus:
description: "A [207 multistatus](https://httpstatuses.com/207) response which body is loosely based on [RFC4918](https://tools.ietf.org/html/rfc4918#section-13) \n"
content:
application/json:
schema:
type: array
description: An array containing a status information for each submitted resource.
items:
type: object
properties:
partitaIva:
type: string
description: 'The piva of the resource.
'
documentId:
type: string
description: 'The companyId of the resource. Optionally present, for instance when the resource has been created.
'
status:
type: string
description: The HTTP status for this resource
error:
type: string
description: The HTTP error description for this resource
422UnprocessableEntityError:
description: 'The provided object cannot be created.
'
content:
application/json:
schema:
$ref: '#/components/schemas/error'
204NoContent:
description: 'The operation completed successfully.
'
securitySchemes:
apiKey:
type: apiKey
description: 'The API Key provided to you by Infocert.
'
name: x-api-key
in: header
x-refined-from:
- infocert-legalinvoice-openapi.yml
- infocert-legalinvoice-openapi.yml