CMS Open Payments API Response "Access Denied" for General Payments 2020 - access-denied

CMS Open Payments API Response "Access Denied" for General Payments
2020
General Payment Data - 2020
The URL is: https://openpaymentsdata.cms.gov/dataset/txng-a8vj
How can I filter rows using this API? I've tried but it seems to not filter any rows and shows an error. It's not getting executed and shown me an error which says that “access denied”.
My tried query is below here:
[SELECT * FROM 37ac320a-c4e2-50fd-b2e1-cfdeeaf93407][WHERE physician_profile_id = '8350']
Please let me know if anyone from the StackOverflow community can help me to filter the rows.

I'm having the same problem with using GET /api​/1​/datastore​/sql as soon as I add [WHERE] clause it returns 403 Access Denied.
There is a way to filter your request by using this endpoint:
POST ​/api​/1​/datastore​/query​/{distributionId}
{
"conditions": [
{
"resource": "t",
"property": "physician_profile_id",
"value": 8350,
"operator": "="
}
],
"limit": 10
}

Related

Error code 010010 is reported when the textSearch API is used after the HMS Core Site Kit is integrated

I've encountered some problems when using Postman to verify nearbySearch of HUAWEI Site Kit. Can anyone help me?
The function of nearbySearch is to search for nearby POIs meeting the requirements. The following are my requests.
The Post method is used and the header is: https://siteapi.cloud.huawei.com/mapApi/v1/siteService/nearbySearch?key=CV7BC1sVBsLAUHByHhfS9DYd8E5K%2FFlQZ4al3ANV4wKa%2BdQgtDPDlcFcCvilr2K1sbYID1A3Db%2F%2B%2FCK5mcR1%2BWUNIjvF
The body is:
{ "location": { "lat":12.9219, "lng": 77.6193 }, "radius": "5000", "poiType": "bank", "countryCode": "in", "language": "en", "pageIndex": 1, "pageSize": 1, "politicalView":"in" }
I find a bank near the longitude and latitude on the map. However, the request cannot find the bank successfully.
Post request result:
{ "returnCode": "010010", "totalCount": 0, "returnDesc": "INVALID_REQUEST" }
Error code 010010 indicates incorrect parameter. However, I do not know what is incorrect.
Can anyone help me?
According to Huawei LocationType, you should enter BANK instead of bank. Enter BANK to try again.

Forbidden !! while trying to access the hereapi traces service

I've been working on here API from past one week, I've tested the geofencing and other rest services. I am trying to work on tracking, Where we have to generate a token by giving all the valid credentials. At last, I've got the token as well but when am trying to access the traces one for which the endpoint URL is
https://tracking.api.here.com/traces/v2/{trackingid}
here I've given the trackingid(deviceid) which I've used to generate an access token and included this token as a bearer in authorization I am using postman to test these, my token is valid for only 23 hours
Authorization Bearer {mytoken}
As mentioned I've also provided this x-request-id, I've no idea regarding this x-request-id but came to know about this from this thread and tried to generate uuid and use it for x-request-id
x-request-id 5506b7d0-2fe6-4967-8ad8-cf0f08fdedbf
And I am receiving the response as
{
"code": 403,
"id": "5506b7d0-2fe6-4967-8ad8-cf0f08fdedbf",
"message": "Forbidden",
"error": "Forbidden\n\nThe account does not have the correct
privileges\n"
}
The similar case even when I am trying to access the allotted geofences for that device and how many devices are in that particular geofence. I've read about whitelisting but whatever the service I am requesting for is not on their list. My account was a 90days free trial account
I am new to this hereapi Kindly correct me if I am doing anything wrong.
Kindly Help me out with this issue
Thanks in advance
--Meghana Goud
I've figured it out, I'll include the details here follow the step by step process as mentioned in the documentation
refer this HERE Tracking | API Reference
And follow the step by step process as mentioned in this documentation
The first one, you'll get your bearer token from this endpoint URL https://tracking.api.here.com/users/v2/login which is post
method and set its Content-Type to application/json and provide the username and password in JSON format and send a POST request to it
EndpointURL :https://tracking.api.here.com/users/v2/login
Headers :{"Content-Type":"application/json"}
Input :{"email":"XXXXXX", "password":"XXXX"}
Expected Response:{
"userId": "XXXXXX",
"accessToken": "XXXXX",
"tokenType": "bearer",
"expiresIn": 86399,
"refreshToken": "XXX"
}
the token is valid for only 24 hours. Now use this token for all the rest services you want to access from here-API
Now I would like to get the traces of my device using this endpointURL https://tracking.api.here.com/traces/v2/{trackingid}?count=1 , send a get request to this endpointURL by giving your trackingID, I repeat TrackingID is different from your deviceId TrackingId will be HERE-XXX(UUIDv4) whereas deviceId will be XXXX(UUIDv4)
now set the authorization to Bearer Token and pass an x-request-id which is a UUIDv4
Your request should look like
EndpointURL :https://tracking.api.here.com/traces/v2/{trackingid}?count=1
Headers :{"Authorization":"Bearer XXXXXX","x-request-id":"XXXX(UUIDv4)"}
Expected Response:{
"count": 1,
"data": [
{
"position": {
"lat": 17.44936354,
"lng": 78.36296417,
"accuracy": 45,
"alt": 539
},
"timestamp": 1531462419813,
"payload": {
"refAppData":
{
"batteryState": {
"charging": false,
"level": 52,
"temperature": 25
}
}
}
}
],
"pageToken": "1531462359711"
}
In order to update any data from your device, you'll require your device token which is generated from this endpoint URLhttps://tracking.api.here.com/v2/token you'll get your access token by OAuth1.o Authorization give the respected values as mentioned in the documentation. you'll get the response as
{
"accessToken": "XXXXXX",
"expiresIn": 86399
}
Similarly, you can test other services,
Hope this helps
Meghana

PayPal Payments API "Incoming JSON request does not map to API request"

I'm trying to perform a super-simple call to the PayPal Payments API.
{
"intent":"sale",
"payer": {
"payment_method":"credit_card",
"funding_instruments": {
"credit_card_token": {
"credit_card_id":"CARD-XXXXXXXXXXXXXXXXXXXXXXXX"
}
}
}
}
I've tried adding/removing various parts of the request, and I've had minimal success, but inevitably, I come across an error of "Incoming JSON request does not map to API request MALFORMED_REQUEST".
According to the documentation, these are the only required parameters, but I've tried different funding_instruments, adding payer_info, adding transactions, using credit_card_token and credit_card... nothing seems to work, and the documentation is useless for troubleshooting.
Is there a way to be able to determine WHY this is a malformed request? Most of the documentation I am coming across uses payment_method: paypal instead of credit_card. What are better ways for me to troubleshoot why this request is failing?
There are a few things to consider first. Are you in the US?
if not you will need to consider if your country can use the API. You can find Information of which countries can use the API here https://developer.paypal.com/docs/integration/direct/rest/country-codes/
You might also need to validate your json. I've tested what you have posted here, but you might not be generating the information properly in your app. check the output and make sure that it is valid json--MALFORMED_REQUEST is an indicator that required key/value pairs are missing or that the json is not valid... this website will help you validate the json output https://jsonlint.com/
check your headers carefully to ensure that you have a properly formatted header request header. you can check your headers against the api requirements here https://developer.paypal.com/docs/api/overview/#http-request-headers
paypal notes that they provide an error code as a json string for errors arising in this manner, and that details may or may not be provided in the response. error response codes are in the 400 and 500 ranges and correspond to error messages (these are listed on the headers page given above)
However, given your error message which is not listed i'm going to guess that you are missing required key/value pairs in your json...
paypal says that INTENT AND PAYER OBJECTS ARE REQUIRED, but the example payment that they give lists a great deal of information that your sample json is missing--
among those items are the transaction details which are required...
per paypal's api docs "Include payer, transaction details...
paypal api documentation gives examples of of the required payer and intent objects here https://developer.paypal.com/docs/api/payments/
restrictions are further placed on direct credit card payments: they may only be accepted from the UK or US, and only if the account is payment pro enabled...
options for avoiding this issue are:
1) paypal classic api direct payments--https://developer.paypal.com/docs/classic/paypal-payments-pro/integration-guide/direct-payment/
2) braintree direct: https://www.braintreepayments.com/products/braintree-direct
3) or payflow pro: https://developer.paypal.com/docs/classic/products/payflow
Funding instruments in an array so the request should be something like below.
Transaction is required as that's the only way you will be able to specify what amount you are capturing.
{
"intent":"sale",
"payer": {
"payment_method":"credit_card",
"funding_instruments": [ {
"credit_card_token": {
"credit_card_id":"CARD-27V22453CF057824JLLDIA7Q"
} }
]
},
"transactions": [
{
"amount": {
"total": "30.11",
"currency": "GBP",
"details": {
"subtotal": "30",
"tax": "0.07",
"shipping": "0.03",
"handling_fee": "1.00",
"shipping_discount": "-1.00",
"insurance": "0.01"
}
}
}]
}

With this RefundTransaction operation, why is my Transaction ID invalid?

I'm trying to test refunds in the Paypal Sandbox, but I'm getting a confusing response; The transaction id is not valid.
I've managed to confirm the following:
I'm passing in the transaction ID that I get from the PAYMENTREQUEST_n_TRANSACTIONID of GetExpressCheckoutDetails.
The Transaction ID is not being modified in between getting it from GetExpressCheckoutDetails and passing it in RefundTransaction.
This happens regardless of whether or not I pass INVOICEID.
The PAYMENTACTION of DoExpressCheckoutPayment for this was Sale.
Am I making any obviously incorrect assumptions here? Does it have anything to do with this being a Sandbox order (Doubtful)? Am I getting the Transaction ID from the wrong source?
Just in case any details are needed, I'll leave the full response...
{
"TIMESTAMP": "2014-01-06T18:15:35Z",
"CORRELATIONID": "cb90afac455c",
"ACK": "Failure",
"VERSION": "109",
"BUILD": "9138168",
"L_ERRORCODE0": "10004",
"L_SHORTMESSAGE0": "Transaction refused because of an invalid argument. See
additional error messages for details.",
"L_LONGMESSAGE0": "The transaction id is not valid",
"L_SEVERITYCODE0": "Error",
"REFUNDSTATUS": "None",
"PENDINGREASON": "None"
}
And the fields/values of the RefundTransaction call itself... (Redacting credentials even though it's sandbox)
{
"METHOD": "RefundTransaction",
"TRANSACTIONID": "30888131YM063371A",
"USER": "[redacted]",
"REFUNDTYPE": "Partial",
"CURRENCYCODE": "USD",
"REFUNDSOURCE": "any",
"AMT": 57.21,
"PWD": "[redacted]",
"SIGNATURE": "[redacted]",
"VERSION": 109
}
EDIT: (May post as an answer if Robert doesn't update his answer after a while, since he deserves credit for this)
PayPal_Robert noted that in my SetExpressCheckout call, I was setting the recipient to the actual account that payments would be going to with the live API when - since this is Sandbox - I should have been sending it to the -facilitator account.
I can't find any transactions with that transactionID in the sandbox environment - across all accounts either. I suspect it's getting mangled somewhere.
The only thing I found for the same API caller is an order with transactionID O-072365850X147461B, created on the 2nd of January.
Can you re-create the entire flow, including creating a fresh transaction and try with that?
If you still run into issues, please file a ticket with us at https://paypal.com/mts (24x7) or shoot me an email (address in profile, I only work GMT however.)

facebook graph api fields not returning

We've recently noticed responses changing a call to calls like:
/me?fields=adaccounts.fields(age,capabilities,currency)
Previously, we would get a response with the requested fields filled in, but now they are coming back with a response similar to:
{
"id": "XXXXXXXXXX",
"adaccounts": {
"data": [
{
"account_id": "XXXXXXXXXXXX",
"id": "XXXXXXXXXXX"
},
{
"account_id": "XXXXXXXXXXX",
"id": "XXXXXXXXXXXXX"
}
],
"paging": {
"cursors": {
"after": "NjAwMjIwMTIyNzM4OA==",
"before": "NjAwMjk2ODQ2OTc1OQ=="
}
}
}
}
Has something changes there? We've been making calls via the api directly and on the Graph API Explorer tool.
Thanks for any help!
UPDATE:
Getting the details for adaccounts fields now requires hitting another endpoint:
/me/adaccounts?fields=age,capabilities,currency
There's no need for multiple calls, you can simply do:
/me/adaccounts?fields=age,capabilities,currency
On October 2nd Facebook made changes to the ads API that requires you to specify what fields you want returned from all the end points. This includes ad account, campaign, group and creative. You must now issue the query with fields=fieldname,fieldname,fieldname with all the fields you want returned when performing a get request. Officially these changes were forced on for applications Friday Oct 4th.
A link with details about the Oct 2nd breaking changes can be found here: http://developers.facebook.com/roadmap/
Hope that helps!
Thanks,
Erick