diff --git a/reference/specs/bindings/twitter.md b/reference/specs/bindings/twitter.md index 73b1aa43c..3b7fb1ad5 100644 --- a/reference/specs/bindings/twitter.md +++ b/reference/specs/bindings/twitter.md @@ -1,5 +1,7 @@ # Twitter Binding Spec +The Twitter binding supports both `input` and `output` binding configuration. First the common part: + ```yaml apiVersion: dapr.io/v1alpha1 kind: Component @@ -17,6 +19,42 @@ spec: value: "****" # twitter api access token, required - name: accessSecret value: "****" # twitter api access secret, required +``` + +For input bindings, where the query matching Tweets are streamed to the user service, the above component has to also include a query: + +```yaml - name: query value: "dapr" # your search query, required ``` + +For output binding invocation the user code has to invoke the binding: + +```shell +POST http://localhost:3500/v1.0/bindings/twitter +``` + +Where the payload is: + +```json +{ + "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](https://developer.twitter.com/en/docs/tweets/rules-and-filtering/overview/standard-operators) for more details on advanced query formats +* `lang` - (optional, default: `en`) restricts result tweets to the given language using [ISO 639-1 language code](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) +* `result` - (optional, default: `recent`) specifies tweet query result type. Valid values include: + * `mixed` - both popular and real time results + * `recent` - most recent results + * `popular` - most popular results + +You can see the example of the JSON data that Twitter binding returns [here](https://developer.twitter.com/en/docs/tweets/search/api-reference/get-search-tweets) \ No newline at end of file