Security

This controller works under the system security rules and constraints.
For more details, refer to the Authentication section

Note

The following guidelines are intended to illustrate the features and features of this Web API controller.


Aliases

This controller can be invoked by other names besides the default one.

This means that, referring to the routing grammar ({schema}://{host}/api/{version}/{controller}/{details}/{action}/{id}?{querystring}) it is possible to use a different fragment for the {controller} component.

Below is the list of these aliases for the fragment {controller}, sorted by suggested preference of use.

AliasPath
FlowsTemplates/api/v1/FlowsTemplates
FlowTemplate/api/v1/FlowTemplate

Authentication

JWT Token

In order to invoke the REST API, it is necessary to obtain an authentication token via the appropriate service /Auth/Login

For more details, please see the appropriate section of the documentations.

Bearer Authentication

Bearer authentication (also called token authentication) is an HTTP authentication scheme that involves security tokens called bearer tokens.

For more details, please see the appropriate section of the documentations.

Identification of the calling application

Some of the REST API functions can only be used if (in addition to proper user authentication) a declaration of the calling application is also performed.

For more details, please see the appropriate section of the documentations.


Actions & Paths

These are the REST actions that can be performed via the Web API infrastructure.
The actions are grouped by "topic".
Click on a "topic" to view the different actions contained in it.

Each action corresponds to a method in the class of the Web API controller, and a set of routing paths that can be used to invoke it.

Explore by topics
Topic nameMost commonly used actions
CRUD
Multiple CRUD
External References
Flow
Misc
OData
Swagger

GET: /api/v1/FlowTemplate/

Routing template:

/api/{version}/FlowTemplate/

Tags:

  • FlowTemplate

Produces:

  • HTTP 200: Int64 as application/json
  • HTTP 200: Int64 as text/json
  • HTTP 200: Int64 as application/xml
  • HTTP 200: Int64 as text/plain
  • HTTP 200: Int64 as application/octet-stream

Response: 200 (Success) ApiActionResult

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


DELETE: /api/v1/FlowTemplate/{id}

Parameters:

NameTypeRequiredInFeatures
id integer YES Path
  • Format: int64

Tags:

  • FlowTemplate

Produces:

  • HTTP 200: Boolean as application/json
  • HTTP 200: Boolean as text/json
  • HTTP 200: Boolean as application/xml
  • HTTP 200: Boolean as text/plain
  • HTTP 200: Boolean as application/octet-stream

Response: 200 (Success) Boolean

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/{id}

Parameters:

NameTypeRequiredInFeatures
id integer YES Path
  • Format: int64

Tags:

  • FlowTemplate

Produces:

Response: 200 (Success) FlowTemplateDTO

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


POST: /api/v1/FlowTemplate/{id}/Clone

Parameters:

NameTypeRequiredInFeatures
id integer YES Path
  • Format: int64

Tags:

  • FlowTemplate

Produces:

  • HTTP 200: Int64 as application/json
  • HTTP 200: Int64 as text/json
  • HTTP 200: Int64 as application/xml
  • HTTP 200: Int64 as text/plain
  • HTTP 200: Int64 as application/octet-stream

Response: 200 (Success) Int64

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/{id}/Exists

Parameters:

NameTypeRequiredInFeatures
id integer YES Path
  • Format: int64

Tags:

  • FlowTemplate

Produces:

  • HTTP 200: Boolean as application/json
  • HTTP 200: Boolean as text/json
  • HTTP 200: Boolean as application/xml
  • HTTP 200: Boolean as text/plain
  • HTTP 200: Boolean as application/octet-stream

Response: 200 (Success) Boolean

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


POST: /api/v1/FlowTemplate/{id}/Export

Parameters:

NameTypeRequiredInFeatures
id integer YES Path
  • Format: int64

Tags:

  • FlowTemplate

Response:

200 (Success)

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/{id}/Flows

Parameters:

NameTypeRequiredInFeatures
id integer YES Path
  • Format: int64

Tags:

  • FlowTemplate

Produces:

  • HTTP 200: FlowDTO as application/json
  • HTTP 200: FlowDTO as text/json
  • HTTP 200: FlowDTO as application/xml
  • HTTP 200: FlowDTO as text/plain
  • HTTP 200: FlowDTO as application/octet-stream

Response: 200 (Success) FlowDTO

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/{id}/FlowsIds

Parameters:

NameTypeRequiredInFeatures
id integer YES Path
  • Format: int64

Tags:

  • FlowTemplate

Produces:

  • HTTP 200: Int64 as application/json
  • HTTP 200: Int64 as text/json
  • HTTP 200: Int64 as application/xml
  • HTTP 200: Int64 as text/plain
  • HTTP 200: Int64 as application/octet-stream

Response: 200 (Success) Int64

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/{id}/FreeFields

Parameters:

NameTypeRequiredInFeatures
id integer YES Path
  • Format: int64

Tags:

  • FlowTemplate

Produces:

Response: 200 (Success) FreeFieldsBOItemDTO

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/{id}/GetFull

Parameters:

NameTypeRequiredInFeatures
id integer YES Path
  • Format: int64

Tags:

  • FlowTemplate

Produces:

Response: 200 (Success) FlowTemplateDTO

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/{id}/GetHash

Parameters:

NameTypeRequiredInFeatures
id integer YES Path
  • Format: int64

Tags:

  • FlowTemplate

Produces:

  • HTTP 200: String as application/json
  • HTTP 200: String as text/json
  • HTTP 200: String as application/xml
  • HTTP 200: String as text/plain
  • HTTP 200: String as application/octet-stream

Response: 200 (Success) String

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/{id}/Humanize

Parameters:

NameTypeRequiredInFeatures
id integer YES Path
  • Format: int64

Tags:

  • FlowTemplate

Produces:

Response: 200 (Success) FlowTemplateDTO

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


DELETE: /api/v1/FlowTemplate/{id}/Photo

Parameters:

NameTypeRequiredInFeatures
id integer YES Path
  • Format: int64

Tags:

  • FlowTemplate

Response:

200 (Success)

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/{id}/Photo

Parameters:

NameTypeRequiredInFeatures
id integer YES Path
  • Format: int64

Tags:

  • FlowTemplate

Response:

200 (Success)

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


POST: /api/v1/FlowTemplate/{id}/Photo

Parameters:

NameTypeRequiredInFeatures
id integer YES Path
  • Format: int64

Tags:

  • FlowTemplate

Consumes:

  • multipart/form-data

Response:

200 (Success)

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


PUT: /api/v1/FlowTemplate/{id}/Recent

Parameters:

NameTypeRequiredInFeatures
id integer YES Path
  • Format: int64

Tags:

  • FlowTemplate

Produces:

  • HTTP 200: Boolean as application/json
  • HTTP 200: Boolean as text/json
  • HTTP 200: Boolean as application/xml
  • HTTP 200: Boolean as text/plain
  • HTTP 200: Boolean as application/octet-stream

Response: 200 (Success) Boolean

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/{id}/Triggers

Parameters:

NameTypeRequiredInFeatures
id integer YES Path
  • Format: int64

Tags:

  • FlowTemplate

Produces:

Response: 400 (Bad Request) array of FlowTriggerDTO

Samples

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/Count

Parameters:

NameTypeRequiredInFeatures
filter string NO Query

Tags:

  • FlowTemplate

Produces:

  • HTTP 200: Int32 as application/json
  • HTTP 200: Int32 as text/json
  • HTTP 200: Int32 as application/xml
  • HTTP 200: Int32 as text/plain
  • HTTP 200: Int32 as application/octet-stream

Response: 200 (Success) Int32

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


POST: /api/v1/FlowTemplate/CreateOrUpdate

Routing template:

/api/{version}/FlowTemplate/CreateOrUpdate

Tags:

  • FlowTemplate

Consumes:

  • application/json
  • application/xml
  • text/plain
  • application/json-patch+json
  • text/json
  • application/*+json

Produces:

  • HTTP 200: Int64 as application/json
  • HTTP 200: Int64 as text/json
  • HTTP 200: Int64 as application/xml
  • HTTP 200: Int64 as text/plain
  • HTTP 200: Int64 as application/octet-stream

Response: 200 (Success) ApiActionResult

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


DELETE: /api/v1/FlowTemplate/DeleteByExternalReference

Parameters:

NameTypeRequiredInFeatures
externalReference string NO Query

Tags:

  • FlowTemplate

Produces:

  • HTTP 200: Boolean as application/json
  • HTTP 200: Boolean as text/json
  • HTTP 200: Boolean as application/xml
  • HTTP 200: Boolean as text/plain
  • HTTP 200: Boolean as application/octet-stream

Response: 200 (Success) Boolean

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/DeleteByExternalReference

Parameters:

NameTypeRequiredInFeatures
externalReference string NO Query

Tags:

  • FlowTemplate

Produces:

  • HTTP 200: Boolean as application/json
  • HTTP 200: Boolean as text/json
  • HTTP 200: Boolean as application/xml
  • HTTP 200: Boolean as text/plain
  • HTTP 200: Boolean as application/octet-stream

Response: 200 (Success) Boolean

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/GetBoDeleteModes

Routing template:

/api/{version}/FlowTemplate/GetBoDeleteModes

Tags:

  • FlowTemplate

Produces:

Response: 200 (Success) array of BoDeleteMode

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/GetByExternalReference

Parameters:

NameTypeRequiredInFeatures
externalReference string NO Query

Tags:

  • FlowTemplate

Produces:

Response: 200 (Success) FlowTemplateDTO

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/GetIdsByExternalReference

Parameters:

NameTypeRequiredInFeatures
externalReference string NO Query
excludeDeletedItems boolean NO Query

Tags:

  • FlowTemplate

Produces:

  • HTTP 200: Int64 as application/json
  • HTTP 200: Int64 as text/json
  • HTTP 200: Int64 as application/xml
  • HTTP 200: Int64 as text/plain
  • HTTP 200: Int64 as application/octet-stream

Response: 200 (Success) Int64

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


POST: /api/v1/FlowTemplate/GetIdsMappedByExternalReference

Routing template:

/api/{version}/FlowTemplate/GetIdsMappedByExternalReference

Tags:

  • FlowTemplate

Consumes:

  • application/json
  • application/xml
  • text/plain
  • application/json-patch+json
  • text/json
  • application/*+json
  • text/xml
  • application/*+xml

Produces:

  • HTTP 200: Int64 as application/json
  • HTTP 200: Int64 as text/json
  • HTTP 200: Int64 as application/xml
  • HTTP 200: Int64 as text/plain
  • HTTP 200: Int64 as application/octet-stream

Response: 200 (Success) ApiActionResult

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


POST: /api/v1/FlowTemplate/GetIdsNotMappedByExternalReference

Routing template:

/api/{version}/FlowTemplate/GetIdsNotMappedByExternalReference

Tags:

  • FlowTemplate

Consumes:

  • application/json
  • application/xml
  • text/plain
  • application/json-patch+json
  • text/json
  • application/*+json
  • text/xml
  • application/*+xml

Produces:

  • HTTP 200: Int64 as application/json
  • HTTP 200: Int64 as text/json
  • HTTP 200: Int64 as application/xml
  • HTTP 200: Int64 as text/plain
  • HTTP 200: Int64 as application/octet-stream

Response: 200 (Success) ApiActionResult

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


POST: /api/v1/FlowTemplate/GetItemsMappedByExternalReference

Routing template:

/api/{version}/FlowTemplate/GetItemsMappedByExternalReference

Tags:

  • FlowTemplate

Consumes:

  • application/json
  • application/xml
  • text/plain
  • application/json-patch+json
  • text/json
  • application/*+json
  • text/xml
  • application/*+xml

Produces:

Response: 200 (Success) ApiActionResult

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


POST: /api/v1/FlowTemplate/GetItemsNotMappedByExternalReference

Routing template:

/api/{version}/FlowTemplate/GetItemsNotMappedByExternalReference

Tags:

  • FlowTemplate

Consumes:

  • application/json
  • application/xml
  • text/plain
  • application/json-patch+json
  • text/json
  • application/*+json
  • text/xml
  • application/*+xml

Produces:

Response: 200 (Success) ApiActionResult

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/GetNewInstance

Routing template:

/api/{version}/FlowTemplate/GetNewInstance

Tags:

  • FlowTemplate

Produces:

Response: 200 (Success) FlowTemplateDTO

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/GetPolymorphicSchema

Parameters:

NameTypeRequiredInFeatures
serializePropertiesAsDictionary boolean NO Query
  • Default: True
honorAcceptLanguageHeader boolean NO Query
  • Default: False
generateSample boolean NO Query
  • Default: False
sampleGenerationStrategy SampleGenerationStrategy NO Query
useExtensions boolean NO Query
  • Default: True
includeExplicitlyDeclaredVirtualProperties boolean NO Query
  • Default: False

Tags:

  • FlowTemplate

Produces:

  • HTTP 400: object as application/json
  • HTTP 400: object as text/json
  • HTTP 400: object as application/xml
  • HTTP 400: object as text/plain
  • HTTP 400: object as application/octet-stream

Response: 400 (Bad Request) object

Samples

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/GetSample

Parameters:

NameTypeRequiredInFeatures
force boolean NO Query
  • Default: False
sampleGenerationStrategy SampleGenerationStrategy NO Query
useExtensions boolean NO Query
  • Default: True

Tags:

  • FlowTemplate

Produces:

  • HTTP 200: JObject as application/json
  • HTTP 200: JObject as text/json
  • HTTP 200: JObject as application/xml
  • HTTP 200: JObject as text/plain
  • HTTP 200: JObject as application/octet-stream

Response: 200 (Success) JObject

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/GetStandardSchema

Parameters:

NameTypeRequiredInFeatures
honorAcceptLanguageHeader boolean NO Query
  • Default: False

Tags:

  • FlowTemplate

Produces:

  • HTTP 400: object as application/json
  • HTTP 400: object as text/json
  • HTTP 400: object as application/xml
  • HTTP 400: object as text/plain
  • HTTP 400: object as application/octet-stream

Response: 400 (Bad Request) object

Samples

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/GetSwagger

Parameters:

NameTypeRequiredInFeatures
honorAcceptLanguageHeader boolean NO Query
  • Default: False
bestPracticeOnly boolean NO Query
  • Default: True

Tags:

  • FlowTemplate

Produces:

  • HTTP 200: object as application/json
  • HTTP 200: object as text/json
  • HTTP 200: object as application/xml
  • HTTP 200: object as text/plain
  • HTTP 200: object as application/octet-stream

Response: 200 (Success) object

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


POST: /api/v1/FlowTemplate/Import

Routing template:

/api/{version}/FlowTemplate/Import

Tags:

  • FlowTemplate

Consumes:

  • application/json
  • application/xml
  • text/plain
  • application/json-patch+json
  • text/json
  • application/*+json

Response:

200 (Success)

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/MapByExternalReference

Parameters:

NameTypeRequiredInFeatures
externalReference string NO Query
internalItemId integer NO Query
  • Format: int64

Tags:

  • FlowTemplate

Response:

200 (Success)

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


DELETE: /api/v1/FlowTemplate/MultipleDelete

Routing template:

/api/{version}/FlowTemplate/MultipleDelete

Tags:

  • FlowTemplate

Consumes:

  • application/json
  • application/xml
  • text/plain
  • application/json-patch+json
  • text/json
  • application/*+json
  • text/xml
  • application/*+xml

Produces:

Response: 200 (Success) ApiActionResult

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


POST: /api/v1/FlowTemplate/MultipleDelete

Routing template:

/api/{version}/FlowTemplate/MultipleDelete

Tags:

  • FlowTemplate

Consumes:

  • application/json
  • application/xml
  • text/plain
  • application/json-patch+json
  • text/json
  • application/*+json
  • text/xml
  • application/*+xml

Produces:

Response: 200 (Success) ApiActionResult

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


POST: /api/v1/FlowTemplate/MultipleExists

Routing template:

/api/{version}/FlowTemplate/MultipleExists

Tags:

  • FlowTemplate

Consumes:

  • application/json
  • application/xml
  • text/plain
  • application/json-patch+json
  • text/json
  • application/*+json
  • text/xml
  • application/*+xml

Produces:

Response: 200 (Success) ApiActionResult

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


POST: /api/v1/FlowTemplate/MultipleGet

Routing template:

/api/{version}/FlowTemplate/MultipleGet

Tags:

  • FlowTemplate

Consumes:

  • application/json
  • application/xml
  • text/plain
  • application/json-patch+json
  • text/json
  • application/*+json
  • text/xml
  • application/*+xml

Produces:

Response: 200 (Success) ApiActionResult[]>

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/PrintableFields

Parameters:

NameTypeRequiredInFeatures
includeFull boolean NO Query
  • Default: True
includeNesting boolean NO Query
  • Default: True

Tags:

  • FlowTemplate

Produces:

Response: 400 (Bad Request) array of LiquidStruct

Samples

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/ResetExternalReferences

Parameters:

NameTypeRequiredInFeatures
internalItemId integer NO Query
  • Format: int64

Tags:

  • FlowTemplate

Response:

200 (Success)

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/Schemes

Routing template:

/api/{version}/FlowTemplate/Schemes

Tags:

  • FlowTemplate

Produces:

Response: 400 (Bad Request) array of SchemaDataDTO

Samples

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/Search

Parameters:

NameTypeRequiredInFeatures
filter string NO Query
orderBy string NO Query
skip integer NO Query
  • Format: int64
top integer NO Query
  • Format: int64
select string NO Query

Tags:

  • FlowTemplate

Produces:

Response: 200 (Success) FlowTemplateDTO

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/SearchIds

Parameters:

NameTypeRequiredInFeatures
filter string NO Query
orderBy string NO Query
skip integer NO Query
  • Format: int64
top integer NO Query
  • Format: int64

Tags:

  • FlowTemplate

Produces:

  • HTTP 200: Int64 as application/json
  • HTTP 200: Int64 as text/json
  • HTTP 200: Int64 as application/xml
  • HTTP 200: Int64 as text/plain
  • HTTP 200: Int64 as application/octet-stream

Response: 200 (Success) Int64

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/SearchIdsByExternalReference

Parameters:

NameTypeRequiredInFeatures
externalReference string NO Query

Tags:

  • FlowTemplate

Produces:

  • HTTP 200: Int64 as application/json
  • HTTP 200: Int64 as text/json
  • HTTP 200: Int64 as application/xml
  • HTTP 200: Int64 as text/plain
  • HTTP 200: Int64 as application/octet-stream

Response: 200 (Success) Int64

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/StartupTypes

Routing template:

/api/{version}/FlowTemplate/StartupTypes

Tags:

  • FlowTemplate

Produces:

Response: 400 (Bad Request) array of FlowStartupReference

Samples

Download Postman collection sample

Try this !


GET: /api/v1/FlowTemplate/UnmapByExternalReference

Parameters:

NameTypeRequiredInFeatures
externalReference string NO Query
internalItemId integer NO Query
  • Format: int64

Tags:

  • FlowTemplate

Response:

200 (Success)

Samples

Download HTTP 200 response sample

Download Postman collection sample

Try this !



Definitions

The following definitions describe the structure of the datamodels involved in the various REST operations that can be performed for this controller.

Some definitions are subjected to polymorphic serialization, and therefore their complete polymorphic scheme is reported.

NameDescription
ActionResultDTOAction Result
BoDeleteModeBo Delete Mode
BusinessObjectTypeBusiness Object Type
CRMTablesCRM Tables
DataClassDTOData Class
DeleteItemResultDelete Item Result
DTOPropertyUsageDTO Property Usage
ExistsItemResultExists Item Result
ExternalReferenceDTOExternal Reference
FlowDataDTOFlow Data
FlowDTOFlow
FlowLabelDTOFlow Label
FlowLogDTOFlow Log
FlowStartupPropertyFlow Startup Property
FlowStartupReferenceFlow Startup Reference
FlowStepResultFlow Step Result
FlowTemplateDTOFlow Template
FlowTemplateExportFlow Template Export
FlowTriggerDTOFlow Trigger
FreeFieldsBOItemDTOFree Fields BO Item
FreeFieldsBOItemLocalizingDTOFree Fields BO Item Localizing
FreeFieldsBOTreeItemDTOFree Fields BO Tree Item
FreeFieldsTypeFree Fields Type
GetIdsMappedByExternalReferenceRequestGet Ids Mapped By External Reference Request
GetItemResult`1[]Get Item Result`1
GetItemsMappedByExternalReferenceRequestGet Items Mapped By External Reference Request
GetNameForGet Name For
GravityGravity
JTokenJ Token
LinkItemLink Item
LiquidStructLiquid Struct
LocalizeTypeLocalize Type
LocalizingDTOLocalizing
LogicalOperatorLogical Operator
MethodBaseMethod Base
MultipleDeleteModelMultiple Delete Model
MultipleExistsModelMultiple Exists Model
MultipleGetModelMultiple Get Model
ReportConditionsReport Conditions
ReportSearchConditionDTOReport Search Condition
SampleGenerationStrategySample Generation Strategy
SchemaDataDTOSchema Data

Errors

The controller actions will generate errors for the following cases:

  • Status 400: Badly formed queries e.g. filter parameters that are not correctly encoded
  • Status 401: Authentication failures e.g. unrecognised keys
  • Status 403: Forbidden. The request was valid, but the server is refusing action. The user might not have the necessary permissions for a resource, or may need an account of some sort.
  • Status 404: Not found. Unknown resources e.g. data which is not public
  • Status 409: Conflict. Indicates that the request could not be processed because of conflict in the current state of the resource, such as an edit conflict between multiple simultaneous updates.
  • Status 500: Server errors e.g. where something has gone

Errors are formatted in JSON


Versioning

It is possible to select the web services version using the {version} token

/api/{version}/{controller}/{details}/{action}/{id}?{querystring}

The token {version} can contain both "exact" values ​​and the special "latest" alias, which identifies the most recent version among those existing in the system.

In general, the use of the special "latest" alias is strongly recommended.

If you want to be particularly "conservative" and adherent to a specific version, specify the name explicitly (eg "v1").


Routing

The system use the following routing syntax, consisting of a sequence of "path-tokens" (the request parameters):

{schema}://{host}/api/{version}/{controller}/{details}/{action}/{id}?{querystring}

The tokens identify respectively:

  • {host} -> HOST of the URL
  • {version} -> version of web services
  • {controller} -> name of the service (controller) you want to invoke
  • {details} -> optional detail level of the returned JSON (if applicable)
  • {action} -> optional action (method) invoked in the controller
  • {id} -> single optional primary key argument (parameter) of the method in the controller, if it so requires
  • {querystring} -> additional parameters and possible "modifiers" of the processing and serialization process


OData

The REST APIs are internally based on the Microsoft WebAPI technology, and are largely compliant with the REST specifications, OData v3 and OData v4.

Functions and details related to OData

For more details and specifications regarding the general criteria to adopt when using the OData functions, refer to the basic guide on the topic


Options

The REST API functions implemented in CRM in Cloud include a vast set of options that allow you to adapt the structure and shape of JSON packages according to your needs and preferences.

Unlike the parameters, which are specified in the URL route (through tokens and querystring), the options must instead be passed through the HTTP headers of the request.

As from RFC6648 all the options passed through HTTP headers have in their name the custom prefix "Crm-".

If a certain option is not specified, the system will use the default value specific to the {version} indicated in the URL.

For a complete discussion of options and polymorphic serialization, refer to the general guide on the subject


Swagger

Below you can download the JSON descriptor in Swagger/OpenAPI format

Download Swagger descriptor