Skip to main content

Available Operations

This section describes in detail the operations available in the External Connections Webservice for EDI operators. In summary, it is possible to create a connection, check the status of a connection, as well as check all existing connections and connection requests.

Create Connection Request

To submit a connection request, use the POST /apps/external-connections method. This method allows you to create a connection between several companies in your system (external entities) and an ilink company. The data to be sent is as follows:

FieldTypeDescription
externalEntities[0][external_entity_name]stringName of the external entity requesting the connection
externalEntities[0][external_entity_nif]stringTax ID (NIF) of the external entity requesting the connection, without the country prefix
externalEntities[0][external_entity_country]stringCountry of the fiscal address of the external entity requesting the connection (ISO 3166 alpha-2 code)
entity_nifstringTax ID (NIF) of the ilink entity, without the country prefix
entity_countrystringCountry of the fiscal address of the ilink entity (ISO 3166 alpha-2 code)
operator_emailstringOperator's email (for notifications)
observationstringNote for the external connection request (optional)

Example: for the Spanish NIF ESA156565898, the NIF fields must be filled in with A156565898 (without the country prefix) and the country fields with ES.

Note: The array notation ([]) indicates that it is possible to send several external entities (externalEntities[0], externalEntities[1], etc.), and a connection will be created for each of them.

On success, the method returns an array with one object per external entity included in the request (externalEntities[]), containing the id of the connection request created and the corresponding external entity's NIF:

HTTP status: 201 Created

{
"success": "true",
"message": {
"code": "s039",
"msg": "External connection successfully created."
},
"response": [
{
"external_entity_nif": "501451676",
"id": "605369246b3412.42340492"
},
{
"external_entity_nif": "503504564",
"id": "605369246b3412.42340499"
}
]
}

Note that this connection will also be visible in the operator portal under the "Integrator" user, and the usual confirmation and status update emails will be sent.

Check Connection Request

To check the status and details of an external connection request, use the GET /apps/external-connections/{id} method, specifying the connection request id in the path (returned when the request was created, see previous section).

On success, the method returns all the connection request data, including the entities involved, the current status and, when applicable, the reason for rejection/pending status or notes from the support team:

HTTP status: 200 Success

{
"success": "true",
"response": {
"data": {
"id": "5eb3cfe7a765c2.94780052",
"person": "John Silva",
"reference": "LE00001",
"created_entity_name": "Example Supplier LDA",
"state_external_connection": {
"id": "605369246b3412.42340492",
"alias": "analyzing",
"description": "Under review"
},
"type_external_connection": {
"id": "605369246b3412.42340499",
"alias": "inbound",
"description": "Inbound"
},
"created_entity": {
"id": "5c3c5850d4c1d9.94316218",
"name": "Example Supplier LDA",
"nif": "501451676"
},
"receiver_entity": {
"id": "5c5bf2ab882986.42628037",
"name": "Example Entity LDA",
"nif": "503504564"
},
"observation": "Requesting connection with the group as soon as possible.",
"partner": "EDI A",
"reason": {
"reason": "Entity not recognized.",
"created_at": "2020-06-02 15:51:12"
},
"admin_observation": {
"observation": "Connection approved.",
"created_at": "2020-06-02 15:51:12"
},
"created_at": "2020-05-01 14:07:47",
"updated_at": "2020-05-01 14:07:47"
}
}
}
FieldDescription
referenceSystem-generated external connection reference
created_entityExternal entity that made the connection request (the same one indicated in externalEntities when the request was created)
receiver_entityilink entity to which the connection request was made
state_external_connection.aliasCurrent status of the connection request (see status table below)
type_external_connection.aliasType of connection requested (always Inbound)
reasonReason for rejection or pending status of the request, only returned when applicable
admin_observationNote recorded by the ilink support team regarding the request, only returned when applicable

The possible values for the state_external_connection.alias field are as follows:

StatusDescription
analyzingThe connection request is being reviewed by the ilink support team
approvedThe connection request has been approved and the connection is active
declinedThe connection request has been declined (see the reason field for more details)

Note: If the specified id does not match any existing connection request, the method returns a 404 Not Found HTTP status code.

List All External Connections

This method allows you to retrieve the complete list of external connections made for your EDI, and can be accessed at GET /apps/external-connections.

All parameters are optional and should be sent via query string, allowing you to filter and paginate the results:

ParameterTypeDescription
referencestring (query)Filter by external connection reference
receiver_entity_nifstring (query)Filter by receiving entity's Tax ID (NIF)
created_entity_nifstring (query)Filter by creating entity's Tax ID (NIF)
created_at_startdate (query)Filter by creation date greater than the specified value (e.g. 2026-01-01)
created_at_enddate (query)Filter by creation date less than the specified value (e.g. 2026-01-01)
orderstring (query)Sort order of the results (asc or desc)
pageinteger (query)Page number to retrieve results from
rowsinteger (query)Number of results per page (15 by default)

On success, the method returns the paginated results, with one object per external connection found:

HTTP status: 200 Success

{
"success": "true",
"response": {
"current_page": 1,
"from": 1,
"to": 1,
"total": 1,
"last_page": 1,
"per_page": 5,
"next_page_url": null,
"prev_page_url": null,
"data": [
{
"id": "5eb3cfe7a765c2.94780052",
"person": "John Silva",
"reference": "LE00001",
"created_entity_name": "Example Supplier LDA",
"state_external_connection": {
"id": "605369246b3412.42340492",
"alias": "pending",
"description": "Pending"
},
"type_external_connection": {
"id": "605369246b3412.42340499",
"alias": "standard",
"description": "Standard"
},
"created_entity": {
"id": "5c3c5850d4c1d9.94316218",
"name": "Example Supplier LDA",
"nif": "501451676"
},
"receiver_entity": {
"id": "5c5bf2ab882986.42628037",
"name": "Example Entity LDA",
"nif": "503504564"
},
"observation": "Connection request for electronic invoicing.",
"partner": "iGest",
"reason": {
"reason": "Entity not recognized.",
"created_at": "2020-06-02 15:51:12"
},
"admin_observation": {
"observation": "Connection approved.",
"created_at": "2020-06-02 15:51:12"
},
"created_at": "2020-05-01 14:07:47",
"updated_at": "2020-05-01 14:07:47"
}
]
}
}
FieldDescription
current_pagePage number returned
from / toIndex of the first and last result on the current page
totalTotal number of external connections found (across all pages)
last_pageNumber of the last available page
per_pageMaximum number of results returned per page
next_page_url / prev_page_urlURLs for the next/previous page, or null when they don't exist
dataArray with the external connections found, each following the same structure described in the Check Connection Request section