To setup Twitter binding create a component of type bindings.twitter
. See this guide on how to create and apply a binding configuration.
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: <NAME>
namespace: <NAMESPACE>
spec:
type: bindings.twitter
version: v1
metadata:
- name: consumerKey
value: "****" # twitter api consumer key, required
- name: consumerSecret
value: "****" # twitter api consumer secret, required
- name: accessToken
value: "****" # twitter api access token, required
- name: accessSecret
value: "****" # twitter api access secret, required
Field | Required | Binding support | Details | Example |
---|---|---|---|---|
consumerKey | Y | Input/Output | Twitter API consumer key | "conusmerkey" |
consumerSecret | Y | Input/Output | Twitter API consumer secret | "conusmersecret" |
accessToken | Y | Input/Output | Twitter API access token | "accesstoken" |
accessSecret | Y | Input/Output | Twitter API access secret | "accesssecret" |
This component supports both input and output binding interfaces.
This component supports output binding with the following operations:
get
For input binding, where the query matching Tweets are streamed to the user service, the above component has to also include a query:
- name: query
value: "dapr" # your search query, required
For output binding invocation the user code has to invoke the binding:
POST http://localhost:3500/v1.0/bindings/twitter
Where the payload is:
{
"data": "",
"metadata": {
"query": "twitter-query",
"lang": "optional-language-code",
"result": "valid-result-type"
},
"operation": "get"
}
The metadata parameters are:
query
- any valid Twitter query (e.g. dapr
or dapr AND serverless
). See Twitter docs for more details on advanced query formatslang
- (optional, default: en
) restricts result tweets to the given language using ISO 639-1 language coderesult
- (optional, default: recent
) specifies tweet query result type. Valid values include:mixed
- both popular and real time resultsrecent
- most recent resultspopular
- most popular resultsYou can see the example of the JSON data that Twitter binding returns here