Unable retrieve post from Graph API for a Keyword - api

https://graph.facebook.com/search?q=ATT&type=post
Steps to Reproduce: https://graph.facebook.com/search?q=ATT&type=post
Expected Behavior: Graph search has to retrieve the posts which is relevant to ATT.
Actual Behavior: Please find below output
Output
{
"data": [
]
}

Have you tried experimenting with a different search term? The following searches work:
https://graph.facebook.com/search?q=ball&type=post
https://graph.facebook.com/search?q=raccoon&type=post
https://graph.facebook.com/search?q=stackoverflow&type=post
So it seems that the issue is with the keyword ATT as opposed to the Graph API search syntax you are using.

Related

How to listen to Tweets that only contains geo-info from Twitter stream

I'm trying to use version 2 of the Twitter API to achieve the goal described in the title. Here's what I have tried so far:
Listening to sample stream (1% of Twitter's stream): Almost all the returned Tweets don't have geo-info when following this approach. And it makes sense, since only 0.85% of all Tweets have geo-info.
Listening to a filtered stream with only one rule setup, namely the has:geo rule. But it's returning the following 2 errors:
"Reference to invalid operator 'has:geo'. Operator is not available in current product or product packaging. Please refer to complete available operator list at https://developer.twitter.com/en/docs/twitter-api/enterprise/rules-and-filtering/operators-by-product. (at position 5)".
"has/is/lang/sample cannot be used as a standalone operator (at position 1)".
Here's the rule I'm adding to the stream:
[
{
"value": "has:geo",
"tag": "contains geo-info",
},
]
I need help in solving both shown errors, or a suggestion describing a third different approach.
I see this question has been discussed on the Twitter Community forum: https://twittercommunity.com/t/how-to-listen-to-tweets-that-only-contains-geo-info-from-twitter-stream/162905/2
Short answer:
The has:geois one of several query operators that can not be used in a standalone fashion, and must be paired with keywords and other non-boolean operators.
The has:geo operator is only available in academic and paid packages.

Shopware 6 Store-API set newsletter recipient tags

I'm trying to add a newsletter recipient through store-api, which works. But when I try to add a tag inside the request, it fails. The documentation states that it is possible to add a tag as a string to the request, see here
My request looks like the following:
POST /store-api/newsletter/subscribe
{"option":"subscribe","email":"email#email.com","storefrontUrl":"http://myhost.test","tags":"men"}
I also tried to make the tags value an array, but this doesn't work either...
So my question is: how do I add a tag to the newsletter recipient through the store api?
As of Version 6.4.3.0 this seems not possible.
I tried the same request as you, as well as
"tags":["men"]
and
"tags":["uuidOfExistingTagGoesHere"]
all does not work.
Also the doc block for tags is wrong (it says "zip code" instead of a useful description).
In addition I tried to assign existing tags - this is what works via the admin API:
"tags": [
{
"id": "80df380188364f3c9bbaaa4d6b993dbd"
},
{
"id": "108428f0a37c4d11a66976adc5337c23"
}
]
Which still returns
"code": "FRAMEWORK__WRITE_MALFORMED_INPUT",
"title": "Bad Request",
"detail": "Expected data to be array.",
Also looking at the code there currently seems no handling of the tags. As far as I understand it, the tags would needed to be created on the fly
A possible fix would be the following code:
if (isset($data['tags']) { // inserted that lines
$data['tags'] = $data['tags']->all();
} // end inserted lines
$data = $this->completeData($data, $context);
Using that line, the last mentioned request works (you could then use the IDs of existing newsletter recipient tags).
Of course in this case the API docs have to be adapted.
TL;DR
In my opinion, this seems a flaw in the current Store API implementation.
I would suggest to create an issue on the Shopware 6 issue tracker.

BigCommerce storefront apis for order

Where is the documentation for /api/storefront/orders/*?
I was expecting to find it on this page.
https://developer.bigcommerce.com/api-docs/cart-and-checkout/working-sf-apis
Specifically, the documentation that would cover /api/storefront/orders/:order-id
and cover the valid inputs to the querystring. I know you can pass include, with one or more of the values as a comma separated string
payments
lineItems.physicalItems.socialMedia
lineItems.physicalItems.options
lineItems.digitalItems.socialMedia
lineItems.digitalItems.options
Edit
The checkout stencil context object used on theme\templates\pages\order-confirmation.html has this schema
{
"order_confirmation_content": "goes in the body",
"checkout_head": "goes in the head",
"order": {
"id": 206
},
"header_image": "for an img src attribute"
}
The documentation for the storefront orders API can be found here:
https://developer.bigcommerce.com/api-reference/orders/storefront-orders-api/order/ordersbyorderidget
However, as you mentioned, there are a few query parameters that are undocumented. Those are not officially supported, and they might be subject to change in the future. This is a case where our position is to hold off on documenting the API parameters until we've determined long-term support. Hope that helps to provide some context!

neo4j v2.0.0-M3 REST API batch insert

I use batch insert for adding nodes using the RESY API I know how to do this before 2.0, but now I'm starting to use the labeled nodes, and I cant get it to work. I don't find how I can add the label to the node.
The documentation is not very clear (to me).
http://docs.neo4j.org/chunked/2.0.0-M03/rest-api-node-labels.html
This is the json that send to the API:
Test1:
[{"method":"POST",
"to":"/node",
"body":{"name":"A"},"id":0},
{"method":"POST",
"to":"{0}/labels",
"body":{"label":"user"}
}]
Test2:
[{"method":"POST",
"to":"/node",
"body":{"name":"A"},"id":0},
{"method":"POST",
"to":"/node/{0}/labels",
"body":{"label":"user"}
}]
Test3:
[{"method":"POST",
"to":"/node",
"body":{"name":"A"},"id":0},
"label":"user"
}]
thanks in advance
Steven
What is the error message you get?
Try this:
[{"method":"POST",
"to":"/node",
"body":{"name":"A"},"id":0},
{"method":"POST",
"to":"{0}/labels",
"body":"user"}
]
As you can see the body is only the label string.
I really appreciate the answer - but this is just to add that for me the labels did not appear in the body > Metadata > Labels section. For some reason this is not updated and it was only when I ran a match against that label that I found they were in fact correct. So if you run the answer - don't see labels listed in the output - they may still be present.

Is there a limit to start option in google custom api CSE list?

using google custom API, I have a problem when I try to get results of more than 100.
I got an error as shown below. The code I am using is below:
res = service.cse().list(
q='lectures',
cx='my custom search engine id',
num=10,
start=100,
).execute()
I want to extract several pages every day.I got this error.
HttpError 400 when requesting .. "Invalid Value">
if I make the start=90 or less it works!
From the documentation for the Google Custom Search API:
https://developers.google.com/custom-search/v1/using_rest
This role is not present if the current results are the last page.
Note: This API returns up to the first 100 results only.