BCTT Partners Portal API - Developer Portal
  • Documentation
  • API Reference
Authentication
    Authenticatepost
Partners
    Callback UpdateputCallback DeletedeleteCallback ListgetCallback Echopost
Processes
    Process DetailgetProcess UpdateputProcess ListgetProcess CreatepostProcess SubmitpostProcess Canceldelete
ProcessesBorrower
    Borrower GetgetBorrower UpdateputBorrower DeletedeleteBorrower ListgetBorrower Createpost
ProcessesDocument
    Document GetgetDocument UpdateputDocument DeletedeleteDocument ListgetDocument Createpost
ProcessesESIS
    Process ESIS GetgetProcess ESIS Emailget
ProcessesMessage
    Processes Message ListgetProcesses Message Createpost
ProcessesProperty
    Property ListgetProperty Updateput
Simulations
    Simulation ListgetSimulation CreatepostSimulation DetailgetSimulation CanceldeleteSimulation UpdatepatchSimulation Validatepost
SimulationsESIS
    Simulation ESIS GetgetSimulation ESIS Emailget
SimulationsMessages
    Simulations Message ListgetSimulations Message Createpost
Taxonomy
    Broker Types GetgetBroker Sub Types GetgetBroker Classifications GetgetBroker Fee Types GetgetBroker Statuses GetgetBroker IVA Regimes GetgetBroker Retention Regimes GetgetBroker Extract Periodicity GetgetCountries GetgetCountry With Districts GetgetDistricts GetgetDistricts With Counties GetgetCounties GetgetCounty With Parishes GetgetParishes GetgetDocument Types GetgetDocument Categories GetgetProduct Purposes GetgetLoan Purposes GetgetProduct Schemes GetgetIndex Type Sub Categories GetgetIndex Types GetgetIndex Type List Mixed GetgetFixed Fixed Period GetgetMixed Fixed Period GetgetBank Charge Types GetgetProperty Typologies GetgetEntity Types GetgetIdentification Documents GetgetMarital Statuses GetgetMatrimonial Regimes GetgetResidence Types GetgetGenders GetgetProfessions GetgetEmployment Contract Types GetgetEmployment Situations GetgetEmployment Department Positions GetgetKey Borrower Relations GetgetProposal Cancel Reasons GetgetProposal Reject Reasons GetgetSimulation Reject Reasons GetgetWorkflow Phases GetgetWorkflow States Simulation GetgetWorkflow States Proposal GetgetRetrieves a paginated list of notification typesget
Schemas
Partners Portal API
Partners Portal API

Partners

Endpointhttps://api-qua-portalparceiros.bancoctt.pt

Callback Update

PUT
https://api-qua-portalparceiros.bancoctt.pt
/v1/partners/{partnerUniqueID}/callbacks/{notificationType}

Creates or updates the callback URL for a specific partner notification type. Use this to configure webhook destinations. Validation ensures the partner exists and the notification type is supported.

Callback Update › path Parameters

partnerUniqueID
string · uuid · required

The unique identifier of the partner.

notificationType
integer · int32 · required

The integer identifier for the specific notification event.

Callback Update › Headers

Authorization
string · required

Bearer token for authentication. Format: Bearer {token}

Callback Update › Request Body

callbackUrl
string

The destination URL for webhook notifications.

Callback Update › Responses

The callback configuration was successfully updated.

object
object
PUT/v1/partners/{partnerUniqueID}/callbacks/{notificationType}
curl --request PUT \
  --url https://api-qua-portalparceiros.bancoctt.pt/v1/partners/:partnerUniqueID/callbacks/:notificationType \
  --header 'Authorization: <string>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "callbackUrl": "https://api.partner.com/webhook"
}
'
shell
Example Request Body
{
  "callbackUrl": "https://api.partner.com/webhook"
}
json
Example Responses
{
  "operationStatus": {
    "operationStatusCode": "020101",
    "operationStatusMessage": "Process Updated successfully"
  },
  "additionalData": {
    "partnerUniqueID": "821feacb-fcdd-4a84-b7e8-b16bf7529be1",
    "notificationType": 2,
    "callbackUrl": "https://api.partner-site.com/callbacks/events",
    "totalRows": 50
  }
}
json
application/json

Callback Delete

DELETE
https://api-qua-portalparceiros.bancoctt.pt
/v1/partners/{partnerUniqueID}/callbacks/{notificationType}

Deletes the callback configuration for a specific partner and notification type. Removes the webhook subscription. Returns 404 if the callback configuration does not exist.

Callback Delete › path Parameters

partnerUniqueID
string · uuid · required

The unique identifier of the partner.

notificationType
integer · int32 · required

The integer identifier for the specific notification event.

Callback Delete › Headers

Authorization
string · required

Bearer token for authentication. Format: Bearer {token}

Callback Delete › Responses

The callback was successfully removed.

object
DELETE/v1/partners/{partnerUniqueID}/callbacks/{notificationType}
curl --request DELETE \
  --url https://api-qua-portalparceiros.bancoctt.pt/v1/partners/:partnerUniqueID/callbacks/:notificationType \
  --header 'Authorization: <string>'
shell
Example Responses
{
  "operationStatus": {
    "operationStatusCode": "020101",
    "operationStatusMessage": "Process Updated successfully"
  }
}
json
application/json

Callback List

GET
https://api-qua-portalparceiros.bancoctt.pt
/v1/partners/{partnerUniqueID}/callbacks

Retrieves a list of all configured callbacks for a specific partner. Returns all active webhook subscriptions and their details for the requested partner ID.

Callback List › path Parameters

partnerUniqueID
string · uuid · required

The unique identifier of the partner.

Callback List › query Parameters

offset
integer · int32

The number of items to skip before starting to collect the result set.

limit
integer · int32

The maximum number of items to return in the result set.

Callback List › Headers

Authorization
string · required

Bearer token for authentication. Format: Bearer {token}

Callback List › Responses

The list of callbacks was successfully retrieved.

object[]

A list of registered callback configurations.

GET/v1/partners/{partnerUniqueID}/callbacks
curl --request GET \
  --url https://api-qua-portalparceiros.bancoctt.pt/v1/partners/:partnerUniqueID/callbacks \
  --header 'Authorization: <string>'
shell
Example Responses
{
  "registeredCallbacks": [
    {
      "partnerUniqueID": "821feacb-fcdd-4a84-b7e8-b16bf7529be1",
      "notificationType": 2,
      "callbackUrl": "https://api.partner-site.com/callbacks/events",
      "totalRows": 50
    }
  ]
}
json
application/json

Callback Echo

POST
https://api-qua-portalparceiros.bancoctt.pt
/v1/partners/{partnerUniqueID}/callbacks/{notificationTypeID}/echo

The rawBody should follow the following structure based on the notificationTypeID. The structure of the rawBody will vary depending on the notificationTypeID, and it is crucial to ensure that the incoming JSON adheres to the expected format for successful processing. Important: At least one of processUniqueId or simulationUniqueId is required, never both. If both are provided, a bad request response will be returned.

Note on Notification Types:

  1. Type (WorkflowStateChange): Requires the following JSON structure:
Code
{ // This is a GUID representing the unique identifier of the workflow process. "processUniqueId": "7c9e6679-7425-40de-944b-e07fc1f90ae7", // This is a GUID representing the unique identifier of the simulation, which can be used for correlating workflow state changes with specific simulations. "simulationUniqueId": "394A9BD7-695E-4998-8761-583F0F17F717", // This is an integer representing the language ID for localization purposes. "WorkflowStateID": 9, // This is a string describing the workflow state change. "Description": "Waiting for documents" }
  1. Type (Notes): Requires the following JSON structure:
Code
{ // This is a GUID representing the unique identifier of the workflow process. "processUniqueId": "7c9e6679-7425-40de-944b-e07fc1f90ae7", // This is a GUID representing the unique identifier of the simulation, which can be used for "simulationUniqueId": "394A9BD7-695E-4998-8761-583F0F17F717"correlating notes with specific simulations. // This is a string representing the title of the note. "Title": "New Note", // This is a string representing the content of the note. "Description": "This is a new note added to the process.", }
  1. Type (Document): Requires the following JSON structure:
Code
{ // This is a GUID representing the unique identifier of the workflow process. "processUniqueId": "7c9e6679-7425-40de-944b-e07fc1f90ae7", // This is a GUID representing the unique identifier of the simulation, which can be used for correlating documents with specific simulations. "simulationUniqueId": "394A9BD7-695E-4998-8761-583F0F17F717", // This is a GUID representing the unique identifier of the document that can be used to notify without sending the DocumentContent. "DocumentGuid": "177699E7-1340-4868-93D8-7E5993C651E4", // This is a string representing the name of the document. "DocumentName" : "ABCDE.pdf", // This is a string representing the type of the document. "DocumentType" : "FINE", // This is the document itself in a byte array format. "DocumentContent" : "BASE64 Document" }

Callback Echo › path Parameters

partnerUniqueID
string · uuid · required

The unique GUID identifier of the partner.

notificationTypeID
integer · int32 · required

The integer identifier of the notification type.

Callback Echo › Headers

Authorization
string · required

Bearer token for authentication. Format: Bearer {token}

Callback Echo › Request Body

No data returned

Callback Echo › Responses

The notification callback was successfully processed.

No data returned
POST/v1/partners/{partnerUniqueID}/callbacks/{notificationTypeID}/echo
curl --request POST \
  --url https://api-qua-portalparceiros.bancoctt.pt/v1/partners/:partnerUniqueID/callbacks/:notificationTypeID/echo \
  --header 'Authorization: <string>' \
  --header 'Content-Type: application/json' \
  --data '{}'
shell
Example Request Body
{}
json
Example Responses
{}
json
application/json

AuthenticationProcesses
JSON
JSON
JSON