Skip to content

EasyPier OpenAPI3

EasyPier API v1



Our EasyPier API is organized around REST. It is documented according the OpenAPI Specification (OAS), based initially on the Swagger Specification and it is available in the link above

It accepts JSON-encoded and query parameters request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.

We recommend to use the Swagger Editor as a starting point. Also note that there is new alpha version of the Swagger Editor with improved capabilities. It allows to import the EasyPier API specification from a URL or a file. To do so, paste the json file from the link above.

It will load the EasyPier API specification and you will be able to generate the client code in the language of your choice. Currently the supported languages are: csharp, csharp-dotnet2, dart, dynamic-html, go, html, html2, java, javascript, jaxrs-cxf-client, kotlin-client, openapi, openapi-yaml, php, python, r, ruby, scala, swift3, swift4, swift5, typescript-angular, typescript-axios, typescript-fetch.

To generate the client code, click on Generate Client and select the language of your choice. It will download a zip file with the generated code. Unzip it and follow the instructions in the README file. It will explain how to install the dependencies and how to use the generated code that includes all the classes and methods to call the EasyPier API.

Important note: The code generated by the Swagger Editor is not production ready. It is just a starting point, you will need to adapt it to your needs. ISystems is not responsible for the code generated by the Swagger Editor nor is responsible for the code you write based on the code generated by the Swagger Editor.

Email: ISystems Web: ISystems

Auth

Our EasyPier API manages authentication via login/password and authorization via JWT with refresh tokens.

First, you need to log in with your credentials and receive an AccessToken (aka JWT) and a RefreshToken. Once you have the AccessToken, you need to include it in the header of your API calls, as shown in the provided examples, to interact with our API.

The AccessToken has a short valid lifetime, and this is where the RefreshToken comes into play. The RefreshToken has a longer lifetime. When you encounter a 401 Unauthorized response, it means that your AccessToken has expired.

To obtain a new valid AccessToken without having to log in again, you can send the expired AccessToken along with the RefreshToken you received during the login process to the Refresh endpoint. This will allow you to obtain a new pair of valid AccessToken and RefreshToken to continue interacting with the API.

We recommend implementing a simple workflow in your code to handle the situation when you receive a 401 response with a prior working AccessToken. In this case, you can trigger a refresh by sending the expired AccessToken and the associated RefreshToken to the Refresh endpoint to obtain a new pair of tokens.

LogIn

Terminal window
# You can also use wget
curl -X POST /users/login?Username=string&Password=string \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
POST /users/login

Username login to obtain a new authorization token

Parameters

NameInTypeRequiredDescription
UsernamequerystringtrueUsername
PasswordquerystringtruePassword

200 Response

{
"accessToken": "string",
"refreshToken": "string"
}

Responses

StatusMeaningDescriptionSchema
200OKLogged in correctlyTokenApi
400Bad RequestBad RequestNone
401UnauthorizedLogin Failed: incorrect username or passwordNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone

Refresh

Terminal window
# You can also use wget
curl -X POST /users/refresh \
-H 'Content-Type: application/json' \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
POST /users/refresh

Refreshes the access token from a user given the expired access token and a valid refresh token

Body parameter

{
"accessToken": "string",
"refreshToken": "string"
}

Parameters

NameInTypeRequiredDescription
bodybodyTokenApifalsenone

200 Response

{
"accessToken": "string",
"refreshToken": "string"
}

Responses

StatusMeaningDescriptionSchema
200OKOKTokenApi
400Bad RequestBad RequestNone
401UnauthorizedUnauthorizedNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone

GetRoles

Terminal window
# You can also use wget
curl -X GET /users/roles \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /users/roles

Returns a list with all the roles the user has

200 Response

[
"string"
]

Responses

StatusMeaningDescriptionSchema
200OKList of user permissionsInline
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedUser unauthorizedNone
403ForbiddenForbiddenNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

Response Schema

Boats

Endpoint related to managing Boats

GetBoat

Terminal window
# You can also use wget
curl -X GET /boats \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /boats

This endpoint returns all the Boats owned by a customer

Parameters

NameInTypeRequiredDescription
CustomerCodequerystringfalseCustomer code
RegistrationNumberquerystringfalseRegistration number / Plate
ActiveDatequerystring(date-time)falseActive Date. By default Today
PageNumberqueryinteger(int32)falsePage Number
PageSizequeryinteger(int32)falsePage Size

200 Response

{
"boat_id": 0,
"boatName": "string",
"plate": "string",
"flag": "string",
"boatModel": "string",
"boatTypeId": 0,
"boatType": "string",
"motorModel": "string",
"registrationNumber": "string",
"registerNumberDueDate": "2019-08-24T14:15:22Z",
"mastNumber": 0,
"lenght": 0,
"beam": 0,
"draught": 0,
"year": 0,
"phone": "string",
"amperage": 0,
"tonnage": 0,
"insuranceCompany": "string",
"policyNumber": "string",
"policyDueDate": "2019-08-24T14:15:22Z",
"importNumber": "string",
"importNumberDueDate": "2019-08-24T14:15:22Z",
"country": "string",
"comments": "string",
"customerId": 0,
"customerCode": "string",
"homePort": "string",
"slip": "string"
}

Responses

StatusMeaningDescriptionSchema
200OKBoats listBoatResponse
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

Budgets

Endpoint related to managing Budgets

AddBudget

Terminal window
# You can also use wget
curl -X POST /budgets/noprice \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {access-token}'
POST /budgets/noprice

This endpoint creates a new Budget, without price calculation, using the provided data and, if the flag SendEmail is selected, it sends an email to the Center

Body parameter

{
"centerCode": "string",
"boatName": "string",
"boatType_id": 0,
"length": 0,
"beam": 0,
"arrivalDate": "2019-08-24T14:15:22Z",
"exitDate": "2019-08-24T14:15:22Z",
"fullName": "string",
"userEmail": "string",
"phone": "string",
"observations": "string"
}

Parameters

NameInTypeRequiredDescription
SendEmailquerybooleanfalsenone
bodybodyBudgetPost_nopricefalsenone

Responses

StatusMeaningDescriptionSchema
201CreatedCreated BudgetNone
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

CheckIn

Endpoint related to managing CkeckIn

InitialCheckIn

Terminal window
# You can also use wget
curl -X POST /checkin \
-H 'Content-Type: application/json' \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
POST /checkin

This endpoint recieves a CheckInPost object that validates the initial reservation data and returns the current reservation data to be filled

Body parameter

{
"seaport": "string",
"document": "string",
"arrivalDate": "2019-08-24T14:15:22Z"
}

Parameters

NameInTypeRequiredDescription
bodybodyCheckInPostfalsenone

200 Response

{
"reservation_id": 0,
"centerName": "string",
"reservationStatus_id": 0,
"slip_id": 0,
"slip": "string",
"arrivalDate": "2019-08-24T14:15:22Z",
"exitDate": "2019-08-24T14:15:22Z",
"boatName": "string",
"plate": "string",
"flag": "string",
"boatModel": "string",
"boatType": "string",
"motorModel": "string",
"eslora": 0,
"manga": 0,
"calado": 0,
"baseSeaPort": "string",
"originSeaport": "string",
"destinationSeaport": "string",
"ownerName": "string",
"ownerSurname": "string",
"ownerNationality": "string",
"ownerDocument": "string",
"captainName": "string",
"captainSurname": "string",
"captainNationality": "string",
"captainDocument": "string",
"insuranceCompany": "string",
"policyNumber": "string",
"policyDueDate": "2019-08-24T14:15:22Z",
"phoneNumber": "string",
"email": "string",
"marketingConsent": true,
"dbInsurance": true,
"dbBoat": true,
"dbOwner": true,
"crew": [
{
"crewName": "string",
"crewSurname": "string",
"crewNationality": "string",
"crewBirthDate": "2019-08-24T14:15:22Z",
"crewType": "string",
"crewType_id": 0,
"crew_DNI": "string",
"expanded": true
}
]
}

Responses

StatusMeaningDescriptionSchema
200OKExtendedCheckInDataCheckInExtendedResponse
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

CheckInExtended

Terminal window
# You can also use wget
curl -X POST /checkin/extended?form=reservation_id,0,flag,string,boatModel,string,plate,string,boatType,string,motorModel,string,eslora,0,manga,0,calado,0,ownerName,string,ownerSurname,string,ownerNationality,string,ownerDocument,string,owExpirationDate,2019-08-24T14%3A15%3A22Z,insuranceCompany,string,policyNumber,string,policyDueDate,2019-08-24T14%3A15%3A22Z,originSeaport,string,destinationSeaport,string,captainName,string,captainSurname,string,captainNationality,string,captainDocument,string,cdExpirationDate,2019-08-24T14%3A15%3A22Z,phoneNumber,string,email,string,marketingConsent,true,pivacyPolicy,true,signData,string,crew,%5Bobject%20Object%5D \
-H 'Content-Type: multipart/form-data' \
-H 'Authorization: Bearer {access-token}'
POST /checkin/extended

This endpoint recieves a multipart form formed by: an application/json parsed CheckInExtendedPost object, and 3 IFormFiles objects. All that reservation information is used to complete the missing information stored in the database

Body parameter

insuranceFile: string
boatDocumentationFile: string
documentOwnerFile: string
pdfFile: string

Parameters

NameInTypeRequiredDescription
formqueryCheckInExtendedPosttrueapplication/json string called “form” containing the reservation data
bodybodyobjectfalsenone
» insuranceFilebodystring(binary)falseInsurance file
» boatDocumentationFilebodystring(binary)falseBoat documentation file
» documentOwnerFilebodystring(binary)falseOwner documentation file
» pdfFilebodystring(binary)falsePDF file

Responses

StatusMeaningDescriptionSchema
200OKOKNone
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

Config

Endpoint related to managing Config

GetBoatTypes

Terminal window
# You can also use wget
curl -X GET /config/boattypes \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /config/boattypes

This endpoint returns a list of the BoatTypes the user has configured. Admin permission allows to manually override the AppCustomer

Parameters

NameInTypeRequiredDescription
inputAppCustomerqueryinteger(int32)falseAppCustomer Override

200 Response

{
"property1": "string",
"property2": "string"
}

Responses

StatusMeaningDescriptionSchema
200OKList of BoatTypesInline
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
» additionalPropertiesstringfalsenonenone

GetSalesServices

Terminal window
# You can also use wget
curl -X GET /config/salesservices?CenterCode=string \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /config/salesservices

This endpoint the filtered list of SalesServices given a center

Parameters

NameInTypeRequiredDescription
CenterCodequerystringtrueCenter code
IncrementalquerybooleanfalseIs Incremental
ServiceType_codesqueryarray[string]falseList of Service Types to filter

200 Response

{
"service_id": 0,
"centerCode": "string",
"name": "string",
"description": "string",
"externalCode": "string",
"serviceType_id": 0,
"serviceType_code": "string",
"vatPercent": 0,
"perSquareMeter": true,
"dailyPrice": true,
"perLength": true
}

Responses

StatusMeaningDescriptionSchema
200OKList of SalesServicesSalesServicesResponse
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

GetCustomerTypes

Terminal window
# You can also use wget
curl -X GET /config/customertypes \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /config/customertypes

This returns a list of CustomerTypes availables

200 Response

{
"customerType_id": 0,
"customerType": "string",
"description": "string",
"color": "string"
}

Responses

StatusMeaningDescriptionSchema
200OKList CustomerTypesCustomerTypesResponse
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

GetSlips

Terminal window
# You can also use wget
curl -X GET /config/slips \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /config/slips

This returns a list of Slips availables

Parameters

NameInTypeRequiredDescription
centercodequerystringfalseCenter code

200 Response

{
"slip_id": 0,
"slipNumber": "string",
"center_id": 0,
"centerCode": "string",
"pier_id": 0,
"slipType_id": 0,
"slipType": "string",
"externalCode": "string",
"width": 0,
"height": 0,
"availableForRent": true,
"amperage": 0,
"voltage": 0,
"phase": 0
}

Responses

StatusMeaningDescriptionSchema
200OKList of SlipsSlipsResponse
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

GetSlipsTypes

Terminal window
# You can also use wget
curl -X GET /config/slips/types \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /config/slips/types

This returns a list of Slips types available

200 Response

{
"slipType_id": 0,
"description": "string",
"lenght": 0,
"beam": 0,
"draught": 0,
"externalCode": "string"
}

Responses

StatusMeaningDescriptionSchema
200OKList of SlipTypesSlipTypesResponse
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

GetPiers

Terminal window
# You can also use wget
curl -X GET /config/piers \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /config/piers

This returns a list of Piers available

200 Response

{
"slipType_id": 0,
"description": "string",
"lenght": 0,
"beam": 0,
"draught": 0,
"externalCode": "string"
}

Responses

StatusMeaningDescriptionSchema
200OKList of PiersSlipTypesResponse
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

ControlAccess

Endpoint related to managing access control

ControlReport

Terminal window
# You can also use wget
curl -X GET /controlaccess/control \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /controlaccess/control

This endpoint delivers an access control report, sorted by timestamp. To optimize data transfer, you can include a timestamp in your request. The endpoint will then return the report where the timestamp in the database is later than the timestamp provided in the request. This feature enables you to request only the most recent changes, rather than a complete report, when a full report is not required.

Parameters

NameInTypeRequiredDescription
TimestampquerystringfalseTimestamp

200 Response

{
"group": "string",
"cardCode": "string",
"accessType_ex_code": 0,
"accessType": "string",
"activationDate": "2019-08-24T14:15:22Z",
"leavingDate": "2019-08-24T14:15:22Z",
"plate1": "string",
"plate2": "string",
"plate3": "string",
"plate4": "string",
"plate5": "string",
"observations": "string",
"name": "string",
"surname": "string",
"dni": "string",
"timestamp": "string"
}

Responses

StatusMeaningDescriptionSchema
200OKAccess control reportAccessControlResponse
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

Customers

Endpoint related to managing Customers

GetCustomers

Terminal window
# You can also use wget
curl -X GET /customers \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /customers

This endpoint returns a list of Customers that can be filtered.

Parameters

NameInTypeRequiredDescription
Customer_idqueryinteger(int32)falseCustomer identifier
CustomerCodequerystringfalseCustomer identifier
CustomerType_idqueryinteger(int32)falseCustomer type identifier
PageNumberqueryinteger(int32)falsePage Number
PageSizequeryinteger(int32)falsePage Size

200 Response

{
"customer_id": 0,
"customerCode": "string",
"name": "string",
"surname": "string",
"document": "string",
"city": "string",
"postalCode": "string",
"address": "string",
"phone": "string",
"fax": "string",
"email": "string",
"mobile": "string",
"acc_Account": "string",
"language": "string",
"country": "string",
"birthDate": "2019-08-24T14:15:22Z",
"entryDate": "2019-08-24T14:15:22Z",
"leavingDate": "2019-08-24T14:15:22Z",
"leavingReason": "string",
"customerStatus_id": 0,
"customerStatus": "string",
"customerSource_id": 0,
"customerSource": "string",
"customerType_id": 0,
"customerType": "string",
"gender": "string"
}

Responses

StatusMeaningDescriptionSchema
200OKList of CustomersCustomersResponse
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

GetCustomersSlips

Terminal window
# You can also use wget
curl -X GET /customers/slips?CenterCode=string \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /customers/slips

This endpoint returns a list of Customer slips that can be filtered. In case the Slip is property of a Customer but is lending it’s use to another Customer. The UsedBy fields will be populated

Parameters

NameInTypeRequiredDescription
CenterCodequerystringtrueCenter code
SlipquerystringfalseSlip
CustomerCodequerystringfalseCustomer code
CustomerUsedByCodequerystringfalseCustomer used by code
EntryDateFromquerystring(date)falseEntry date from
EntryDateToquerystring(date)falseEntry date to
LeavingDateFromquerystring(date)falseLeaving date from
LeavingDateToquerystring(date)falseLeaving date to
PageNumberqueryinteger(int32)falsePage Number
PageSizequeryinteger(int32)falsePage Size

200 Response

{
"customerSlipId": 0,
"customerId": 0,
"customerCode": "string",
"slipId": 0,
"slip": "string",
"entryDate": "2019-08-24T14:15:22Z",
"leavingDate": "2019-08-24T14:15:22Z",
"centerId": 0,
"centerCode": "string",
"observations": "string",
"status": "string",
"useType": "string",
"customerUsedById": 0,
"customerUsedByCode": "string"
}

Responses

StatusMeaningDescriptionSchema
200OKList of Customers slipsCustomerSlipsResponse
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

Documents

Endpoint related to managing documents

GetPortalDocumentTypes

Terminal window
# You can also use wget
curl -X GET /documents/types \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /documents/types

This endpoint return all the public Document Types avaliables

200 Response

{
"documentType_id": 0,
"description": "string",
"public": true,
"customerPortal": true,
"updateOnCustomerPortal": true
}

Responses

StatusMeaningDescriptionSchema
200OKDocument typesPortalDocumentTypeResponse
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

GetPortalDocuments

Terminal window
# You can also use wget
curl -X GET /documents?sCustomerCode=string \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /documents

This endpoint allows to retrieve all the public documents associated to a Customer.

Parameters

NameInTypeRequiredDescription
sCustomerCodequerystringtrueCustomer Code
PublicquerybooleanfalsePublic check
CustomerPortalquerybooleanfalseCustomer portal check
UpdateOnCustomerPortalquerybooleanfalseUpdate on Customer portal check
DocumentsTypeIdsqueryarray[integer]falseList of DocumentType_id to filter

200 Response

{
"document_id": 0,
"documentType_id": 0,
"documentType": "string",
"description": "string",
"date": "2019-08-24T14:15:22Z",
"dateReminder": "2019-08-24T14:15:22Z",
"url": "string"
}

Responses

StatusMeaningDescriptionSchema
200OKDocuments listPortalDocumentResponse
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

PostPortalDocuments

Terminal window
# You can also use wget
curl -X POST /documents \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {access-token}'
POST /documents

This endpoint allows to upload a document encoded as BASE64 to be uploaded to EasyPier associated to a customer. You must provide either a CustomerCode or a Boat_id

Body parameter

{
"sCustomerCode": "string",
"boat_id": 0,
"iCenterId": 0,
"documentType_id": 0,
"description": "string",
"dDate": "2019-08-24T14:15:22Z",
"dDateReminder": "2019-08-24T14:15:22Z",
"sFileName": "string",
"sFileStream": "string",
"sFileExtension": "string"
}

Parameters

NameInTypeRequiredDescription
bodybodyPortalDocumentPostfalsenone

Responses

StatusMeaningDescriptionSchema
200OKFile uploaded successfullyNone
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

GetCustomerInvoice

Terminal window
# You can also use wget
curl -X GET /documents/customers/invoice?InvoiceId=0&CustomerCode=string \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /documents/customers/invoice

This endpoint allows to retrieve a Customer Invoice document freshly generated.

Parameters

NameInTypeRequiredDescription
InvoiceIdqueryinteger(int32)trueInvoice identifier
CustomerCodequerystringtrueCustomer code
CultureCodequerystringfalseCulture code to generate the report. (es-ES) by default
EmbedFontsquerybooleanfalseAre fonts embeded. (false) by default

200 Response

"string"

Responses

StatusMeaningDescriptionSchema
200OKGenerated file URLstring
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

GetCustomerInvoicePDF

Terminal window
# You can also use wget
curl -X GET /documents/customers/invoice/PDF?InvoiceId=0&CustomerCode=string \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /documents/customers/invoice/PDF

This endpoint allows to retrieve a Customer Invoice PDF freshly generated.

Parameters

NameInTypeRequiredDescription
InvoiceIdqueryinteger(int32)trueInvoice identifier
CustomerCodequerystringtrueCustomer code
CultureCodequerystringfalseCulture code to generate the report. (es-ES) by default
EmbedFontsquerybooleanfalseAre fonts embeded. (false) by default

200 Response

"string"

Responses

StatusMeaningDescriptionSchema
200OKGenerated filestring
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

GetCustomerBudget

Terminal window
# You can also use wget
curl -X GET /documents/customers/budgets?BudgetId=0&CustomerCode=string \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /documents/customers/budgets

This endpoint allows to retrieve a Customer Budget document freshly generated.

Parameters

NameInTypeRequiredDescription
BudgetIdqueryinteger(int32)trueBudget identifier
CustomerCodequerystringtrueCustomer code
CultureCodequerystringfalseCulture code to generate the report. (es-ES) by default

200 Response

"string"

Responses

StatusMeaningDescriptionSchema
200OKGenerated PDF filenamestring
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

GetCustomerProforma

Terminal window
# You can also use wget
curl -X GET /documents/customers/proformas?ProformaId=0&CustomerCode=string \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /documents/customers/proformas

This endpoint allows to retrieve a Customer Proforma document freshly generated.

Parameters

NameInTypeRequiredDescription
ProformaIdqueryinteger(int32)trueProforma identifier
CustomerCodequerystringtrueCustomer code
CultureCodequerystringfalseCulture code to generate the report. (es-ES) by default
EmbedFontsquerybooleanfalseAre fonts embeded. (false) by default

200 Response

"string"

Responses

StatusMeaningDescriptionSchema
200OKGenerated filestring
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

GetRsvnAccountStatement

Terminal window
# You can also use wget
curl -X GET /documents/rscaccount \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /documents/rscaccount

This endpoint allows to retrieve a Reservation Account Statement document freshly generated.

Parameters

NameInTypeRequiredDescription
Reservation_idqueryinteger(int32)falsenone
dateFromquerystring(date-time)falsenone
dateToquerystring(date-time)falsenone

200 Response

"string"

Responses

StatusMeaningDescriptionSchema
200OKGenerated PDF filenamestring
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

GetInvReportPDF

Terminal window
# You can also use wget
curl -X GET /documents/invoice/report/PDF?Invoice_id=0 \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
GET /documents/invoice/report/PDF

This endpoint allows to retrieve an Invoice Report PDF document freshly generated.

Parameters

NameInTypeRequiredDescription
Invoice_idqueryinteger(int32)trueInvoice identifier
CultureCodequerystringfalseCulture code to generate the report. (es-ES) by default
EmbedFontsquerybooleanfalseAre fonts embeded. (false) by default

200 Response

"string"

Responses

StatusMeaningDescriptionSchema
200OKGenerated filestring
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

Supplies

Endpoint related to managing Supplies

GetSalesServices

Terminal window
# You can also use wget
curl -X POST /supplies?CenterCode=string&Slip=string&ExternalCode=string&Quantity=0 \
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
POST /supplies

This endpoint adds a Supply to a given Slip. If the Supply is already present and it’s incremental, it will be updated with the new reading.

Parameters

NameInTypeRequiredDescription
CenterCodequerystringtrueCenter code
SlipquerystringtrueSlip code
ExternalCodequerystringtrueSupply external code
Quantityquerynumber(double)trueQuantity

200 Response

[
{
"service_id": 0,
"centerCode": "string",
"name": "string",
"description": "string",
"externalCode": "string",
"serviceType_id": 0,
"serviceType_code": "string",
"vatPercent": 0,
"perSquareMeter": true,
"dailyPrice": true,
"perLength": true
}
]

Responses

StatusMeaningDescriptionSchema
200OKSuccessfulInline
204No ContentNo ContentNone
400Bad RequestBad RequestNone
401UnauthorizedNo valid token was providedNone
403ForbiddenUser permission level insufficientNone
415Unsupported Media TypeUnsupported media type, please ensure that you’re sending the data in the appropiate way. We recommend checking your Content-Type headerNone
429Too Many RequestsToo many requests, try again laterNone
500Internal Server ErrorInternal Server ErrorNone

Response Schema

Status Code 200

NameTypeRequiredRestrictionsDescription
anonymous[SalesServicesResponse]falsenonenone
» service_idinteger(int32)falsenoneService identifier
» centerCodestring¦nullfalsenoneCenter code
» namestring¦nullfalsenoneService name
» descriptionstring¦nullfalsenoneDescription
» externalCodestring¦nullfalsenoneService external sode
» serviceType_idinteger(int32)¦nullfalsenoneServiceType identifier
» serviceType_codestring¦nullfalsenoneServiceType code
» vatPercentnumber(double)¦nullfalsenoneTaxes
» perSquareMeterbooleanfalsenoneIs per square meter
» dailyPricebooleanfalsenoneIs daily price
» perLengthbooleanfalsenoneIs per length

Schemas

AccessControlResponse

{
"group": "string",
"cardCode": "string",
"accessType_ex_code": 0,
"accessType": "string",
"activationDate": "2019-08-24T14:15:22Z",
"leavingDate": "2019-08-24T14:15:22Z",
"plate1": "string",
"plate2": "string",
"plate3": "string",
"plate4": "string",
"plate5": "string",
"observations": "string",
"name": "string",
"surname": "string",
"dni": "string",
"timestamp": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
groupstring¦nullfalsenoneGroup
cardCodestring¦nullfalsenoneCard code
accessType_ex_codeinteger(int32)¦nullfalsenoneAccess type external code
accessTypestring¦nullfalsenoneAccess type description
activationDatestring(date-time)¦nullfalsenoneActivation date
leavingDatestring(date-time)¦nullfalsenoneLeaving date
plate1string¦nullfalsenonePlate 1
plate2string¦nullfalsenonePlate 2
plate3string¦nullfalsenonePlate 3
plate4string¦nullfalsenonePlate 4
plate5string¦nullfalsenonePlate 5
observationsstring¦nullfalsenoneObservations
namestring¦nullfalsenoneName
surnamestring¦nullfalsenoneSurname
dnistring¦nullfalsenoneDNI
timestampstring¦nullfalsenoneTimestamp

BoatResponse

{
"boat_id": 0,
"boatName": "string",
"plate": "string",
"flag": "string",
"boatModel": "string",
"boatTypeId": 0,
"boatType": "string",
"motorModel": "string",
"registrationNumber": "string",
"registerNumberDueDate": "2019-08-24T14:15:22Z",
"mastNumber": 0,
"lenght": 0,
"beam": 0,
"draught": 0,
"year": 0,
"phone": "string",
"amperage": 0,
"tonnage": 0,
"insuranceCompany": "string",
"policyNumber": "string",
"policyDueDate": "2019-08-24T14:15:22Z",
"importNumber": "string",
"importNumberDueDate": "2019-08-24T14:15:22Z",
"country": "string",
"comments": "string",
"customerId": 0,
"customerCode": "string",
"homePort": "string",
"slip": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
boat_idinteger(int32)falsenoneBoat identifier
boatNamestring¦nullfalsenoneBoat name
platestring¦nullfalsenoneBoat plate
flagstring¦nullfalsenoneBoat flag
boatModelstring¦nullfalsenoneBoat model
boatTypeIdinteger(int32)¦nullfalsenoneBoat type identifier
boatTypestring¦nullfalsenoneBoat type
motorModelstring¦nullfalsenoneMotor model
registrationNumberstring¦nullfalsenoneRegistration number
registerNumberDueDatestring(date-time)¦nullfalsenoneRegister number due date
mastNumberinteger(int32)¦nullfalsenoneMast number
lenghtnumber(double)¦nullfalsenoneLenght
beamnumber(double)¦nullfalsenoneBeam
draughtnumber(double)¦nullfalsenoneDraught
yearinteger(int32)¦nullfalsenoneYear
phonestring¦nullfalsenonePhone
amperagenumber(double)¦nullfalsenoneAmperage
tonnagenumber(double)¦nullfalsenoneTonnage
insuranceCompanystring¦nullfalsenoneInsurance company
policyNumberstring¦nullfalsenoneInsurance policy number
policyDueDatestring(date-time)¦nullfalsenoneInsurance policy due date
importNumberstring¦nullfalsenoneImport number
importNumberDueDatestring(date-time)¦nullfalsenoneImport number due date
countrystring¦nullfalsenoneCountry
commentsstring¦nullfalsenoneComments
customerIdinteger(int32)¦nullfalsenoneCustomer identifier
customerCodestring¦nullfalsenoneCustomer code
homePortstring¦nullfalsenoneHome port
slipstring¦nullfalsenoneSlip number

BudgetPost_noprice

{
"centerCode": "string",
"boatName": "string",
"boatType_id": 0,
"length": 0,
"beam": 0,
"arrivalDate": "2019-08-24T14:15:22Z",
"exitDate": "2019-08-24T14:15:22Z",
"fullName": "string",
"userEmail": "string",
"phone": "string",
"observations": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
centerCodestringtruenoneCenter code
boatNamestringtruenoneBoat name
boatType_idinteger(int32)truenoneBoat type identifier
lengthnumber(double)truenoneLenght
beamnumber(double)truenoneBeam
arrivalDatestring(date-time)truenoneArrival date
exitDatestring(date-time)truenoneExit date
fullNamestringtruenoneUser full name
userEmailstringtruenoneUser email
phonestring¦nullfalsenoneUser phone
observationsstring¦nullfalsenoneUser observations

CheckInExtendedPost

{
"reservation_id": 0,
"flag": "string",
"boatModel": "string",
"plate": "string",
"boatType": "string",
"motorModel": "string",
"eslora": 0,
"manga": 0,
"calado": 0,
"ownerName": "string",
"ownerSurname": "string",
"ownerNationality": "string",
"ownerDocument": "string",
"owExpirationDate": "2019-08-24T14:15:22Z",
"insuranceCompany": "string",
"policyNumber": "string",
"policyDueDate": "2019-08-24T14:15:22Z",
"originSeaport": "string",
"destinationSeaport": "string",
"captainName": "string",
"captainSurname": "string",
"captainNationality": "string",
"captainDocument": "string",
"cdExpirationDate": "2019-08-24T14:15:22Z",
"phoneNumber": "string",
"email": "string",
"marketingConsent": true,
"pivacyPolicy": true,
"signData": "string",
"crew": [
{
"crewName": "string",
"crewSurname": "string",
"crewNationality": "string",
"crewBirthDate": "2019-08-24T14:15:22Z",
"crewType": "string",
"crewType_id": 0,
"crew_DNI": "string",
"expanded": true
}
]
}

Properties

NameTypeRequiredRestrictionsDescription
reservation_idinteger(int32)truenoneReservation identifier
flagstringtruenoneBoat flag
boatModelstring¦nullfalsenoneBoat model
platestring¦nullfalsenoneBoat plate
boatTypestring¦nullfalsenoneBoat type
motorModelstring¦nullfalsenoneMotor model
esloranumber(double)¦nullfalsenoneLenght
manganumber(double)¦nullfalsenoneBeam
caladonumber(double)¦nullfalsenoneDraught
ownerNamestring¦nullfalsenoneOwner name
ownerSurnamestring¦nullfalsenoneOwner surname
ownerNationalitystring¦nullfalsenoneOwner nationality
ownerDocumentstringtruenoneOwner document
owExpirationDatestring(date-time)falsenoneOwner document expiration date
insuranceCompanystringtruenoneInsurance company
policyNumberstringtruenonePolicy number
policyDueDatestring(date-time)¦nullfalsenonePolicy due date
originSeaportstring¦nullfalsenoneOrigin seaport
destinationSeaportstring¦nullfalsenoneDestination seaport
captainNamestring¦nullfalsenoneCaptain name
captainSurnamestring¦nullfalsenoneCaptain surname
captainNationalitystringtruenoneCaptain nationality ISO2
captainDocumentstringtruenoneCaptain document
cdExpirationDatestring(date-time)truenoneCaptain document expiration date
phoneNumberstringtruenonePhone number
emailstringtruenoneEmail
marketingConsentbooleantruenoneIs marketing consent accepted
pivacyPolicybooleantruenoneIs Privacy policy accepted
signDatastring¦nullfalsenoneSign data B64
crew[CrewMembers]¦nullfalsenoneCrew members

CheckInExtendedResponse

{
"reservation_id": 0,
"centerName": "string",
"reservationStatus_id": 0,
"slip_id": 0,
"slip": "string",
"arrivalDate": "2019-08-24T14:15:22Z",
"exitDate": "2019-08-24T14:15:22Z",
"boatName": "string",
"plate": "string",
"flag": "string",
"boatModel": "string",
"boatType": "string",
"motorModel": "string",
"eslora": 0,
"manga": 0,
"calado": 0,
"baseSeaPort": "string",
"originSeaport": "string",
"destinationSeaport": "string",
"ownerName": "string",
"ownerSurname": "string",
"ownerNationality": "string",
"ownerDocument": "string",
"captainName": "string",
"captainSurname": "string",
"captainNationality": "string",
"captainDocument": "string",
"insuranceCompany": "string",
"policyNumber": "string",
"policyDueDate": "2019-08-24T14:15:22Z",
"phoneNumber": "string",
"email": "string",
"marketingConsent": true,
"dbInsurance": true,
"dbBoat": true,
"dbOwner": true,
"crew": [
{
"crewName": "string",
"crewSurname": "string",
"crewNationality": "string",
"crewBirthDate": "2019-08-24T14:15:22Z",
"crewType": "string",
"crewType_id": 0,
"crew_DNI": "string",
"expanded": true
}
]
}

Properties

NameTypeRequiredRestrictionsDescription
reservation_idinteger(int32)falsenoneReservation identifier
centerNamestring¦nullfalsenoneSeaport name
reservationStatus_idinteger(int32)¦nullfalsenoneReservation status identifier
slip_idinteger(int32)falsenoneSlip identifier
slipstring¦nullfalsenoneSlip
arrivalDatestring(date-time)¦nullfalsenoneArrival date
exitDatestring(date-time)¦nullfalsenoneExit date
boatNamestring¦nullfalsenoneBoat name
platestring¦nullfalsenoneBoat plate
flagstring¦nullfalsenoneBoat flag
boatModelstring¦nullfalsenoneBoat model
boatTypestring¦nullfalsenoneBoat type
motorModelstring¦nullfalsenoneMotor model
esloranumber(double)¦nullfalsenoneLenght
manganumber(double)¦nullfalsenoneBeam
caladonumber(double)¦nullfalsenoneDraught
baseSeaPortstring¦nullfalsenoneBase seaport
originSeaportstring¦nullfalsenoneOrigin seaport
destinationSeaportstring¦nullfalsenoneDestination seaport
ownerNamestring¦nullfalsenoneOwner name
ownerSurnamestring¦nullfalsenoneOwner surname
ownerNationalitystring¦nullfalsenoneOwner nationlity
ownerDocumentstring¦nullfalsenoneOwner document
captainNamestring¦nullfalsenoneCaptain name
captainSurnamestring¦nullfalsenoneCaptain name
captainNationalitystring¦nullfalsenoneCaptain nationlity
captainDocumentstring¦nullfalsenoneCaptain document
insuranceCompanystring¦nullfalsenoneInsurance company
policyNumberstring¦nullfalsenoneInsurance policy number
policyDueDatestring(date-time)¦nullfalsenoneInsurance policy dude date
phoneNumberstring¦nullfalsenonePhone number
emailstring¦nullfalsenoneContact email
marketingConsentbooleanfalsenoneMarketing consent
dbInsurancebooleanfalsenoneIs Boat insurance file already present
dbBoatbooleanfalsenoneIs Boat documentation file already present
dbOwnerbooleanfalsenoneIs Owner documentation file already present
crew[CrewMembers]¦nullfalsenonenone

CheckInPost

{
"seaport": "string",
"document": "string",
"arrivalDate": "2019-08-24T14:15:22Z"
}

Properties

NameTypeRequiredRestrictionsDescription
seaportstringtruenoneSeaport
documentstringtruenoneCustomer NIF / Passport
arrivalDatestring(date-time)truenoneArrival date

CrewMembers

{
"crewName": "string",
"crewSurname": "string",
"crewNationality": "string",
"crewBirthDate": "2019-08-24T14:15:22Z",
"crewType": "string",
"crewType_id": 0,
"crew_DNI": "string",
"expanded": true
}

Properties

NameTypeRequiredRestrictionsDescription
crewNamestring¦nullfalsenoneCrew name
crewSurnamestring¦nullfalsenoneCrew surname
crewNationalitystring¦nullfalsenoneCrew nationality
crewBirthDatestring(date-time)¦nullfalsenoneCrew date of birth
crewTypestring¦nullfalsenoneCrew Type
crewType_idinteger(int32)falsenoneCrew Type identifier
crew_DNIstring¦nullfalsenoneCrew document
expandedbooleanfalsenoneIs expanded

CustomerSlipsResponse

{
"customerSlipId": 0,
"customerId": 0,
"customerCode": "string",
"slipId": 0,
"slip": "string",
"entryDate": "2019-08-24T14:15:22Z",
"leavingDate": "2019-08-24T14:15:22Z",
"centerId": 0,
"centerCode": "string",
"observations": "string",
"status": "string",
"useType": "string",
"customerUsedById": 0,
"customerUsedByCode": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
customerSlipIdinteger(int32)falsenoneCustomerSlip identifier
customerIdinteger(int32)falsenoneCustomer identifier
customerCodestring¦nullfalsenoneCustomer code
slipIdinteger(int32)¦nullfalsenoneSlip identifier
slipstring¦nullfalsenoneSlip
entryDatestring(date-time)¦nullfalsenoneEntry date
leavingDatestring(date-time)¦nullfalsenoneLeaving date
centerIdinteger(int32)¦nullfalsenoneCenter identifier
centerCodestring¦nullfalsenoneCenter code
observationsstring¦nullfalsenoneObervations
statusstring¦nullfalsenoneStatus
useTypestring¦nullfalsenoneUse type
customerUsedByIdinteger(int32)¦nullfalsenoneCustomer used by identifier
customerUsedByCodestring¦nullfalsenoneCustomer used by code

CustomerTypesResponse

{
"customerType_id": 0,
"customerType": "string",
"description": "string",
"color": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
customerType_idinteger(int32)falsenoneCustomer type identifier
customerTypestring¦nullfalsenoneCustomer type
descriptionstring¦nullfalsenoneDescription
colorstring¦nullfalsenoneAssociated color

CustomersResponse

{
"customer_id": 0,
"customerCode": "string",
"name": "string",
"surname": "string",
"document": "string",
"city": "string",
"postalCode": "string",
"address": "string",
"phone": "string",
"fax": "string",
"email": "string",
"mobile": "string",
"acc_Account": "string",
"language": "string",
"country": "string",
"birthDate": "2019-08-24T14:15:22Z",
"entryDate": "2019-08-24T14:15:22Z",
"leavingDate": "2019-08-24T14:15:22Z",
"leavingReason": "string",
"customerStatus_id": 0,
"customerStatus": "string",
"customerSource_id": 0,
"customerSource": "string",
"customerType_id": 0,
"customerType": "string",
"gender": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
customer_idinteger(int32)falsenoneCustomer identifier
customerCodestring¦nullfalsenoneCustomer code
namestring¦nullfalsenoneName
surnamestring¦nullfalsenoneSurname
documentstring¦nullfalsenoneNIF/Passport
citystring¦nullfalsenoneCity
postalCodestring¦nullfalsenonePostal code
addressstring¦nullfalsenoneAddress
phonestring¦nullfalsenonePhone
faxstring¦nullfalsenoneFax
emailstring¦nullfalsenoneEmail
mobilestring¦nullfalsenoneMobile
acc_Accountstring¦nullfalsenoneAcc_Account
languagestring¦nullfalsenoneLanguage
countrystring¦nullfalsenoneCountry
birthDatestring(date-time)¦nullfalsenoneBirth date
entryDatestring(date-time)¦nullfalsenoneEntry date
leavingDatestring(date-time)¦nullfalsenoneLeaving date
leavingReasonstring¦nullfalsenoneLeaving reason
customerStatus_idinteger(int32)¦nullfalsenoneCustomer status identifier
customerStatusstring¦nullfalsenoneCustomer status
customerSource_idinteger(int32)¦nullfalsenoneCustomer source identifier
customerSourcestring¦nullfalsenoneCustomer source
customerType_idinteger(int32)¦nullfalsenoneCustomer type identifier
customerTypestring¦nullfalsenoneCustomer type
genderstring¦nullfalsenoneGender

PortalDocumentPost

{
"sCustomerCode": "string",
"boat_id": 0,
"iCenterId": 0,
"documentType_id": 0,
"description": "string",
"dDate": "2019-08-24T14:15:22Z",
"dDateReminder": "2019-08-24T14:15:22Z",
"sFileName": "string",
"sFileStream": "string",
"sFileExtension": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
sCustomerCodestring¦nullfalsenoneCustomer code
boat_idinteger(int32)¦nullfalsenoneBoat identifier
iCenterIdinteger(int32)truenoneCenter identifier
documentType_idinteger(int32)truenoneDocument type identifier
descriptionstring¦nullfalsenoneDescription
dDatestring(date-time)truenoneDocument date
dDateReminderstring(date-time)¦nullfalsenoneDocument date reminder
sFileNamestringtruenoneFile Name
sFileStreamstringtruenoneFile Stream Content (B64)
sFileExtensionstringtruenoneFile extension

PortalDocumentResponse

{
"document_id": 0,
"documentType_id": 0,
"documentType": "string",
"description": "string",
"date": "2019-08-24T14:15:22Z",
"dateReminder": "2019-08-24T14:15:22Z",
"url": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
document_idinteger(int32)falsenoneDocument identifier
documentType_idinteger(int32)¦nullfalsenoneDocument Type identifier
documentTypestring¦nullfalsenoneDocument Type
descriptionstring¦nullfalsenoneDescription
datestring(date-time)¦nullfalsenoneDate
dateReminderstring(date-time)¦nullfalsenoneDate reminder
urlstring¦nullfalsenoneURL

PortalDocumentTypeResponse

{
"documentType_id": 0,
"description": "string",
"public": true,
"customerPortal": true,
"updateOnCustomerPortal": true
}

Properties

NameTypeRequiredRestrictionsDescription
documentType_idinteger(int32)falsenoneDocument Type identifier
descriptionstring¦nullfalsenoneDescription
publicbooleanfalsenonePublic check
customerPortalbooleanfalsenoneCustomer portal check
updateOnCustomerPortalbooleanfalsenoneUpdate on Customer portal check

SalesServicesResponse

{
"service_id": 0,
"centerCode": "string",
"name": "string",
"description": "string",
"externalCode": "string",
"serviceType_id": 0,
"serviceType_code": "string",
"vatPercent": 0,
"perSquareMeter": true,
"dailyPrice": true,
"perLength": true
}

Properties

NameTypeRequiredRestrictionsDescription
service_idinteger(int32)falsenoneService identifier
centerCodestring¦nullfalsenoneCenter code
namestring¦nullfalsenoneService name
descriptionstring¦nullfalsenoneDescription
externalCodestring¦nullfalsenoneService external sode
serviceType_idinteger(int32)¦nullfalsenoneServiceType identifier
serviceType_codestring¦nullfalsenoneServiceType code
vatPercentnumber(double)¦nullfalsenoneTaxes
perSquareMeterbooleanfalsenoneIs per square meter
dailyPricebooleanfalsenoneIs daily price
perLengthbooleanfalsenoneIs per length

SlipTypesResponse

{
"slipType_id": 0,
"description": "string",
"lenght": 0,
"beam": 0,
"draught": 0,
"externalCode": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
slipType_idinteger(int32)falsenoneSlip type identifier
descriptionstring¦nullfalsenoneDescription
lenghtnumber(double)¦nullfalsenoneLenght
beamnumber(double)¦nullfalsenoneBeam
draughtnumber(double)¦nullfalsenoneDraught
externalCodestring¦nullfalsenoneExternal code

SlipsResponse

{
"slip_id": 0,
"slipNumber": "string",
"center_id": 0,
"centerCode": "string",
"pier_id": 0,
"slipType_id": 0,
"slipType": "string",
"externalCode": "string",
"width": 0,
"height": 0,
"availableForRent": true,
"amperage": 0,
"voltage": 0,
"phase": 0
}

Properties

NameTypeRequiredRestrictionsDescription
slip_idinteger(int32)falsenoneSlip identifier
slipNumberstring¦nullfalsenoneSlip number
center_idinteger(int32)¦nullfalsenoneCenter identifier
centerCodestring¦nullfalsenoneCenter code
pier_idinteger(int32)¦nullfalsenonePier identifier
slipType_idinteger(int32)¦nullfalsenoneSlip type identifier
slipTypestring¦nullfalsenoneSlip type
externalCodestring¦nullfalsenoneExternal code
widthinteger(int32)¦nullfalsenoneWidth
heightinteger(int32)¦nullfalsenoneHeight
availableForRentbooleanfalsenoneIs available for rent
amperagenumber(double)¦nullfalsenoneAmperage
voltagenumber(double)¦nullfalsenoneVoltage
phaseinteger(int32)¦nullfalsenonePhase

TokenApi

{
"accessToken": "string",
"refreshToken": "string"
}

Properties

NameTypeRequiredRestrictionsDescription
accessTokenstring¦nullfalsenoneAccess Token
refreshTokenstring¦nullfalsenoneRefresh Token