cancel
Showing results for 
Search instead for 
Did you mean: 

SAP Builds Apps using BTP Destination - 500 Internal server error: Unable to fulfill proxy request

Vendel_Seedorff
Explorer
0 Kudos
2,326

Hi Community!

So I have just recently started my journey to expand my skills on BTP and SAP Build Apps. For this I have setup the 90-day free Trial BTP environment as I will only use it for my own personal development and try out some simple scenarios in non-prod and non commercial aspects. Including simple integration flows using the trial Integration Suite.

I have been successful in making my very own first mobile app using the SAP journey. Very satisfying since I come from a technical background and never developed applications!

My goal is to then use my new skills in any potential customer engagements and assignments in their environments.

So to my current small project and issue:

Goal - Simple SAP Successfactors app, to be able to use SAP standard API's and create simple web forms/mobile app on SAP Build.

For this I have access to a Demo/Trial Successfactors system as a SAP partner.

So I have my BTP trial global account with the subaccount and have done the following:

- Enabled the SAP Build Apps

- This also includes the Cloud Identity Services, Business Application Studio and Build Work Zone

- Enabled the Integration Suite with Trial plan

- Made sure the necessary entitlements for Successfactors Extensibility are in place (api-access and sso-configuration)

- The instances for SAP Successfactors Extensibility are created and also the ones for integration flow

- Successfully established and registred the BTP trial global account with the Successfactors demo system

- HTTP destination is in place and working including the necessary additional properties

- New project in SAP Build Apps

The HTTP Destination was created using the OAuth2SAMLBearerAssertion and connection check is OK.

However I am getting Failed to load in the Add Integration/BTP destinations:

When clicking it shows this

Destination details
{
  "name": "Successfactors_Trial",
  "productName": "SAP SuccessFactors",
  "mobile_enabled": false,
  "requires_csrf": true,
  "sapSalesAndServiceCloud": {
    "is_mashup": false,
    "is_api_metadata": false,
    "is_api": false
  },
  "is_catalog": false,
  "is_appgyver_metering": false,
  "is_dynamic": true
}
Request details
{
  "headers": {
    "Accept": "application/json, text/plain, */*",
    "Content-Type": "application/json",
    "x-csrf-token": "81f911f27d7ede76c3c60324bd186f678e5b8833d37559d2400c9c8ab0347b73",
    "x-requested-with": "XMLHttpRequest"
  },
  "baseURL": "/destinations_api/v2/destination/Successfactors_Trial",
  "data": "{\"headers\":{\"accept\":\"application/json, text/plain, */*\"},\"url\":\"\",\"method\":\"get\"}",
  "adapter": [
    "xhr",
    "http"
  ]
}
Response details
{
  "status": 500,
  "headers": {
    "content-length": "80",
    "content-type": "application/json; charset=utf-8",
    "date": "Fri, 22 Dec 2023 11:07:30 GMT",
    "etag": "W/\"50-sa5SlLWsYaGxfJDCkJJp6FVHVoQ\"",
    "strict-transport-security": "max-age=63072000; includeSubDomains; preload",
    "x-correlation-id": "46a05d26-472a-4af1-bb5a-a26057a985db",
    "x-frame-options": "DENY",
    "x-request-id": "46a05d26-472a-4af1-bb5a-a26057a985db"
  },
  "data": {
    "error": "Failed to build headers.",
    "message": "Unable to fulfill proxy request"
  }
}

Instance details

Venkat_Vyza
Active Participant
0 Kudos

For which API, you created the Destination?

Vendel_Seedorff
Explorer
0 Kudos

Remember I am completely new in this area and never worked with either API's, Integration or Build apps before. I only trying to read various blogs etc to try this out. So I really don't really know what I am doing yet..

I have created a API in the integration suite using a copy from API hub. I have also tried to add the CORS Policy template to fix the issue with CORS and adding the "authorization" into the http header.

Apperently there is something coming in but all the API calls fails.

I would prefer to not use Basic Authentication because its not secure enough and soon will be decommissioned anyway. So would like to use the more secure OAuth2 authentication.

What could be the issue?

Dan_Wroblewski
Developer Advocate
Developer Advocate
0 Kudos

Can you show the URL of the destination, and show the response you get from that URL from Postman or browser, for example?

You must provide a URL that returns the service document of an OData service -- many people specify the system or an OData entity, but you must provide the URL to the top of the OData service.

Vendel_Seedorff
Explorer
0 Kudos

----------

Vendel_Seedorff
Explorer
0 Kudos

Hi

You mean the URL to the Successfactors demo instance?

I cant access directly since this is not allowed and I do not want to use basic auth, only Oauth2.

When clicking on the BTP destination Im getting

{
  "status": 500,
  "headers": {
    "content-length": "80",
    "content-type": "application/json; charset=utf-8",
    "date": "Wed, 27 Dec 2023 20:47:58 GMT",
    "etag": "W/\"50-sa5SlLWsYaGxfJDCkJJp6FVHVoQ\"",
    "strict-transport-security": "max-age=63072000; includeSubDomains; preload",
    "x-correlation-id": "d5277693-0955-4278-9754-4963a747b426",
    "x-frame-options": "DENY",
    "x-request-id": "d5277693-0955-4278-9754-4963a747b426"
  },
  "data": {
    "error": "Failed to build headers.",
    "message": "Unable to fulfill proxy request"
  } 

}

View Entire Topic
Vendel_Seedorff
Explorer
0 Kudos

daniel.wroblewski any help here would be really appreciated. It looks fairly straight forward when reading the various blogs or the learning journey's but it doesnt work still 😞

Dan_Wroblewski
Developer Advocate
Developer Advocate
0 Kudos

2 things I can suggest/ask:

  • Can you show the response when using the destination somewhere else (successfully)?
  • When I created a CAP service and used it in Build Apps, I had to have them on the same tenant, or there was an authentication issue (using UserTokenExchange), and maybe there is also a restriction here.
mep
Explorer
0 Kudos
I'm struggling with this too. Wonder if you managed to resolve this. Any help will be appriciated 🐵
tsapkov
Discoverer
0 Kudos

Hi mep,

I solve the issue by changing the authentication method for the SF destination in BTP cockpit from OAuth2SAMLBearerAssertion to the BasicAuthentication. Now it works and I need to figure out how to customize the oauth2 method properly but that's another story.