API Proxy - Error while fetching object - apigee

When I open the details window on any of my API Proxies using the APIGee Developer Dashboard, I get two error messages
Error while fetching object: No server entry found with ID long token goes here
and
Server Error: No server entry found with ID same long token goes here
The page still seems to function partially, but this prevents me from seeing my API proxy deployments and proxy information, or from tracing calls to the API.
I can't figure out what triggered this error - I don't see any recent config changes and the API proxy and the endpoint services are up and running. There's no reference to 'Server Entry' anywhere on the config page or in the help, which makes it hard to know where to start when fixing this.

Please see here: http://status.apigee.com/
This could be related to the platform release in flight.
You can subscribe to this for future updates too.
If the issue still persists, do raise a support ticket http://apigee.com/about/support/request-support

Related

WooCommerce - Auto generating API keys using our Application Authentication Endpoint give 401 Invalid URL error

I'm attempting to use the REST API provided by WooCommerce to generate the Customer Secret and Customer Key values so that it could be used to invoke other WooCommerce REST APIs. I referred the documentation about generating the key values and managed to get it working using a mock endpoint in Postman used for the call_back URL in the API as mentioned in the document.
I created a POST service in my backend server and managed to setup a SSL certificate in the local environment with a domain mapped in hosts file in /etc directory. I ran the backend service and invoked the callback url through Postman and it worked. Then I used that as the call_back URL in the actual WooCommerce Auth endpoint to programatically generate the keys and save it in my DB. But I'm getting
"Access Denied" - Error: A valid URL was not provided..
When I checked the browser through devtools -> network noticed that there is a 401 Unauthorize error.
Here is the sample GET URL that is uesd for WooCommerce API key generation
http://localhost/woocommerce/wc-auth/v1/authorize?app_name=<SOME_NAME>&scope=read_write&user_id=36&return_url=http://localhost/woocommerce/&callback_url=https://foo.bar.dev:44329/api/services/app/woo_commerce_auth/6/callback
callback_url = https://foo.bar.dev:44329/api/services/app/woo_commerce_auth/6/callback
When the callback_url is a mock url generated using Postman it works fine
callback_url = https://513ca6ab-db16-4635-8d0b-9159e3b1e187.mock.pstmn.io/api/services/app/woo_commerce_auth/6/callback
Any clue why this happens, I could not find a way to troubleshoot this issue. Appreciate the help.
Hi posting this for future reference, and hope it would help others who face this problem as well.
Things to keep in mind when setting the callback_url,
Non HTTPS URL endpoint are not allowed.
URL should not be a localhost url (e.g localhost/callback would give an invalid URL error)
URL should not contain port number (e.g localhost:4320/callback or foo.bar.dev:4892/callback are invalid)
Callback URL should be a POST url
If an error such as Error: An error occurred in the request and at the time were unable to send the consumer data. is given after checking all the above check the backend service code related to the callback_url (I had a 500 server error which triggered this, it was not a WooCommerce issue)
Also a tool such as ngrok would be really helpful to setup an HTTPS endpoint in your local environment to test this.

Not always receiving client certificate in IIS

We have a ASP.NET web service which needs to receive a client cert from another service. We have configured our cloud service in IIS to "Accept Client certificates" in IIS Manager (we do not have "Require SSL" check marked in the SSL settings of our website). Occasionally when we attempt to get the client certificate in with the following code (Asp.Net):
httpAuthenticationContext.Request.GetClientCertificate();
we get null. This issue is intermittent. Sometimes, GetClientCertificate() returns the expected cert.
While not this exact issue, we periodically have issues in our Azure implementation of requesting data from a file, database, etc. that we know exists, but fails to return data.
We learned to just wrap these calls with some retry logic, with a brief delay in between. If the calls fail a few times in a row, we throw an error, but for these "transient" issues, sometimes a simple retry will do the trick...
Hope this helps

View the arguments of a POST-Request in Google App Engine logs

I have a server running over Google App Engine.
I am viewing my server's request-log via the console.
They are located under Google Cloud Platform --> Stackdriver Logging --> Logs.
I would like to view the arguments of a POST-Request.
With a GET-Request it is easy, as they are visible in the title of the entry.
They are also viable in the body of the entry, under protoPayload --> resource.
With a POST-Request, however, they are nowhere to be found.
Here are my options:
metadata
protoPayload
insertId
log
httpRequest
operation
None of these options seem to contain the arguments of the request.
From this answer, I understand that they should be within the request-body.
How can I find them within GAE logs?
post request data isn't shown in request logs.
In your app, you must explicitly log it
logging.log(myRequest.PostData)
Edit: just be careful logging sensitive customer information.

arcanist install-certificate fails

I set up my own hosted phabricator, everything is working fine (Diffusion repo etc)
I ran into problem after I installed arcanist on my dev box and run 'arc install-certificate', got exception as following:
rying to connect to server...
LOGIN TO PHABRICATOR
Open this page in your browser and login to Phabricator if necessary:
http:///conduit/login/
Then paste the API Token on that page below.
Paste API Token from that page: cli-e644viducdcccrge4i7zo5nfa66d
Usage Exception: The token "cli-e644viducdcccrge4i7zo5nfa66d" is not a valid API Token. The server returned this response when trying to use it as a token: ERR-CONDUIT-CORE: Attempting to access attached data on PhabricatorUser (via getAwayUntil()), but the data is not actually attached. Before accessing attachable data on an object, you must load and attach it.
I am wondering what's might go wrong? Thank you very much for your insights!
I've seen this problem occur many times with our users. In every case so far, the problem has been that users have set up the phabricator uri incorrectly.
Suggestion:
Check your project .arcconfig or your global .arcrc files (if you're doing this outside a project).
Verify that the URI to your Phabricator site is correct. The typical issue I've seen is accessing using http:// rather than https://

Twitterizer - The remote server returned an error: (401) Unauthorized

Most answers to this questions suggest to make sure your Twitter app is setup as a "web app" and not a "desktop app"... in the current Twitter dev site... I do not see this option.
I also made sure to provide a callback URL when first setting up my app.
Any thoughts?
Use the callback url for your app. For local development, you can use 127.0.0.1 or proxied address like http://www.localhost.com. Then, error will disappear. Thanks.
The API returns a 401 when the OAuth tokens you've provided are revoked/invalid or any time you attempt an action for which you do not have access. For example, if your application is read-only and it attempts to post a tweet, a 401 will be returned.
Twitter does provide an error message and Twitterizer will return that to you when it can. It is in the ErrorMessage property of the response.

Resources