openapi: 3.2.0 info: title: Fenergo Nebula Integration Core Auth Configuration API description: '**Integration Core API**: Integration Core BFF API allows to create and access integration flows and its'' executions.' version: '1.0' servers: - url: /integrationcore security: - Bearer: [] tags: - name: AuthConfiguration paths: /api/authConfiguration: get: tags: - AuthConfiguration summary: Gets all Auth Configurations description: 'Required permissions: Following permissions are required: IntegrationFlowsAuthConfigurationAccess Required permissions: Following permissions are required: IntegrationFlowsAuthConfigurationAccess' operationId: GetAllAuthConfigurations parameters: - name: X-TENANT-ID in: header description: The UiD of the tenant representing organization required: true schema: type: string example: b11f8be3-f29b-4959-8964-956d4af7c468 responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/AuthConfigurationDtoIReadOnlyCollectionServiceResponse' '401': description: User is not authorized to perform this request content: application/json: example: message: Unauthorized '403': description: Access to resource is forbidden. content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: {} messages: - message: 'Access denied. Following permissions are required: Permission1, Permission2' type: Forbidden errorCode: Error Code '500': description: Internal server exception. Please, contact your provider. content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: null messages: - message: Internal server exception. Please, contact your provider. type: Error errorCode: INTERNAL_SERVER_ERROR '410': description: Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers. content: application/json: schema: $ref: '#/components/schemas/StringServiceResponse' example: data: null messages: - message: This endpoint is obsolete and was terminated on yyyy-MM-dd type: Error errorCode: OBSOLETE_ENDPOINT /api/authConfiguration/flow/{flowId}: get: tags: - AuthConfiguration summary: Gets an Auth Configuration by Integration Flow Id description: 'Required permissions: Following permissions are required: IntegrationFlowsAuthConfigurationAccess Required permissions: Following permissions are required: IntegrationFlowsAuthConfigurationAccess' operationId: GetAuthConfigByFlowId parameters: - name: flowId in: path description: Integration Flow Id or Flow Key required: true schema: type: string - name: X-TENANT-ID in: header description: The UiD of the tenant representing organization required: true schema: type: string example: b11f8be3-f29b-4959-8964-956d4af7c468 responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/AuthConfigurationDtoServiceResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: {} messages: - message: Not Found type: Error errorCode: Error Code '401': description: User is not authorized to perform this request content: application/json: example: message: Unauthorized '403': description: Access to resource is forbidden. content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: {} messages: - message: 'Access denied. Following permissions are required: Permission1, Permission2' type: Forbidden errorCode: Error Code '500': description: Internal server exception. Please, contact your provider. content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: null messages: - message: Internal server exception. Please, contact your provider. type: Error errorCode: INTERNAL_SERVER_ERROR '410': description: Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers. content: application/json: schema: $ref: '#/components/schemas/StringServiceResponse' example: data: null messages: - message: This endpoint is obsolete and was terminated on yyyy-MM-dd type: Error errorCode: OBSOLETE_ENDPOINT put: tags: - AuthConfiguration summary: Creates or updates Integration Flow Auth Configuration description: 'Required permissions: Following permissions are required: IntegrationFlowsAuthConfigurationEdit Required permissions: Following permissions are required: IntegrationFlowsAuthConfigurationEdit' operationId: SaveAuthConfiguration parameters: - name: flowId in: path description: Integration Flow Id or Flow Key required: true schema: type: string - name: X-TENANT-ID in: header description: The UiD of the tenant representing organization required: true schema: type: string example: b11f8be3-f29b-4959-8964-956d4af7c468 requestBody: description: Configuration Details content: application/json: schema: allOf: - $ref: '#/components/schemas/SaveAuthConfigurationRequestDto' responses: '202': description: Accepted '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ServiceResponse' '401': description: User is not authorized to perform this request content: application/json: example: message: Unauthorized '403': description: Access to resource is forbidden. content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: {} messages: - message: 'Access denied. Following permissions are required: Permission1, Permission2' type: Forbidden errorCode: Error Code '500': description: Internal server exception. Please, contact your provider. content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: null messages: - message: Internal server exception. Please, contact your provider. type: Error errorCode: INTERNAL_SERVER_ERROR '410': description: Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers. content: application/json: schema: $ref: '#/components/schemas/StringServiceResponse' example: data: null messages: - message: This endpoint is obsolete and was terminated on yyyy-MM-dd type: Error errorCode: OBSOLETE_ENDPOINT delete: tags: - AuthConfiguration summary: Deletes an existing Integration Flow Auth Configuration description: 'Required permissions: Following permissions are required: IntegrationFlowsAuthConfigurationEdit Required permissions: Following permissions are required: IntegrationFlowsAuthConfigurationEdit' operationId: DeleteAuthConfiguration parameters: - name: flowId in: path description: Integration Flow Id or Flow Key required: true schema: type: string - name: X-TENANT-ID in: header description: The UiD of the tenant representing organization required: true schema: type: string example: b11f8be3-f29b-4959-8964-956d4af7c468 responses: '202': description: Accepted '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ServiceResponse' '401': description: User is not authorized to perform this request content: application/json: example: message: Unauthorized '403': description: Access to resource is forbidden. content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: {} messages: - message: 'Access denied. Following permissions are required: Permission1, Permission2' type: Forbidden errorCode: Error Code '500': description: Internal server exception. Please, contact your provider. content: application/json: schema: $ref: '#/components/schemas/ObjectServiceResponse' example: data: null messages: - message: Internal server exception. Please, contact your provider. type: Error errorCode: INTERNAL_SERVER_ERROR '410': description: Endpoint marked as deprecated was terminated. This response will be present only if the endpoint was marked as deprecated and has reached the sunset date. During the deprecation period, the API will include additional 'sunset' and 'deprecation' headers. content: application/json: schema: $ref: '#/components/schemas/StringServiceResponse' example: data: null messages: - message: This endpoint is obsolete and was terminated on yyyy-MM-dd type: Error errorCode: OBSOLETE_ENDPOINT components: schemas: ServiceResponse: type: object properties: data: type: - string - 'null' messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage' additionalProperties: false AuthConfigurationDto: type: object properties: flowId: type: string format: uuid flowKey: type: - string - 'null' configurationDetails: type: - array - 'null' items: oneOf: - $ref: '#/components/schemas/IpWhitelistingAuthConfigurationDto' - $ref: '#/components/schemas/SharedKeyAuthConfigurationDto' - $ref: '#/components/schemas/HmacAuthConfigurationDto' callbackDetails: type: - array - 'null' items: $ref: '#/components/schemas/CallbackAuthConfigDetailDto' additionalProperties: false HmacAuthConfigurationDto: allOf: - $ref: '#/components/schemas/AuthConfigDetailDto' - type: object properties: authenticationMethod: allOf: - $ref: '#/components/schemas/AuthenticationMethod' example: Hmac headerKey: type: - string - 'null' example: X-Auth-Signature secret: type: - string - 'null' additionalProperties: false AuthenticationMethod: enum: - IpWhitelist - SharedKey - Hmac type: string SharedKeyLocation: enum: - Header - QueryParameter type: string CallbackAuthConfigDetailDto: type: object properties: asyncKey: type: - string - 'null' authDetails: type: - array - 'null' items: oneOf: - $ref: '#/components/schemas/IpWhitelistingAuthConfigurationDto' - $ref: '#/components/schemas/SharedKeyAuthConfigurationDto' - $ref: '#/components/schemas/HmacAuthConfigurationDto' additionalProperties: false IpWhitelistingAuthConfigurationDto: allOf: - $ref: '#/components/schemas/AuthConfigDetailDto' - type: object properties: authenticationMethod: allOf: - $ref: '#/components/schemas/AuthenticationMethod' example: IpWhitelist ips: type: - array - 'null' items: type: string additionalProperties: false AuthConfigurationDtoIReadOnlyCollectionServiceResponse: type: object properties: data: type: - array - 'null' items: $ref: '#/components/schemas/AuthConfigurationDto' messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage' additionalProperties: false AuthConfigurationDtoServiceResponse: type: object properties: data: allOf: - $ref: '#/components/schemas/AuthConfigurationDto' messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage' additionalProperties: false ServiceResponseMessage: type: object properties: message: type: - string - 'null' type: type: - string - 'null' errorCode: type: - string - 'null' additionalProperties: false AuthConfigDetailDto: type: object properties: authenticationMethod: allOf: - $ref: '#/components/schemas/AuthenticationMethod' additionalProperties: false SaveAuthConfigurationRequestDto: type: object properties: configurationDetails: type: - array - 'null' items: oneOf: - $ref: '#/components/schemas/IpWhitelistingAuthConfigurationDto' - $ref: '#/components/schemas/SharedKeyAuthConfigurationDto' - $ref: '#/components/schemas/HmacAuthConfigurationDto' callbackDetails: type: - array - 'null' items: $ref: '#/components/schemas/CallbackAuthConfigDetailDto' additionalProperties: false SharedKeyAuthConfigurationDto: allOf: - $ref: '#/components/schemas/AuthConfigDetailDto' - type: object properties: authenticationMethod: allOf: - $ref: '#/components/schemas/AuthenticationMethod' example: SharedKey sharedKeyLocation: allOf: - $ref: '#/components/schemas/SharedKeyLocation' parameterName: type: - string - 'null' example: ApiKey sharedKey: type: - string - 'null' additionalProperties: false ObjectServiceResponse: type: object properties: data: {} messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage' additionalProperties: false StringServiceResponse: type: object properties: data: type: - string - 'null' messages: type: - array - 'null' items: $ref: '#/components/schemas/ServiceResponseMessage' additionalProperties: false securitySchemes: Bearer: type: apiKey description: Please insert JWT with Bearer into field name: Authorization in: header