All Projects → CamiloGarciaLaRotta → watermelon-http-client

CamiloGarciaLaRotta / watermelon-http-client

Licence: MIT license
GitHub Action to perform HTTP requests. Supports GraphQL!

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to watermelon-http-client

graphql-demo
graphql前端实践
Stars: ✭ 21 (+0%)
Mutual labels:  graphql-client
requester
The package provides a very thin wrapper (no external dependencies) for http.Client allowing the use of layers (middleware).
Stars: ✭ 14 (-33.33%)
Mutual labels:  http-client
hugo-action
Commands to help with building Hugo based static sites
Stars: ✭ 65 (+209.52%)
Mutual labels:  github-action
Curio
A Blazing Fast HTTP Client
Stars: ✭ 35 (+66.67%)
Mutual labels:  http-client
aiohttp-json-rpc
Implements JSON-RPC 2.0 using aiohttp
Stars: ✭ 54 (+157.14%)
Mutual labels:  http-client
zenith
⚡ Functional Scala HTTP server, client, and toolkit.
Stars: ✭ 15 (-28.57%)
Mutual labels:  http-client
nrwl-nx-action
A GitHub Action to wrap Nrwl Nx commands in your workflows.
Stars: ✭ 163 (+676.19%)
Mutual labels:  github-action
axios-case-converter
Axios transformer/interceptor that converts snake_case/camelCase
Stars: ✭ 114 (+442.86%)
Mutual labels:  http-client
csharp-http-client
Twilio SendGrid's C# HTTP Client for calling APIs
Stars: ✭ 25 (+19.05%)
Mutual labels:  http-client
hunt-http
http library for D, support http 1.1 / http 2.0 (http2) / websocket server and client.
Stars: ✭ 29 (+38.1%)
Mutual labels:  http-client
ghql
GraphQL R client
Stars: ✭ 128 (+509.52%)
Mutual labels:  graphql-client
action-ssh
GitHub Action for executing SSH commands on remote servers
Stars: ✭ 60 (+185.71%)
Mutual labels:  github-action
github-action-markdown-cli
Style checking and linting for Markdown/CommonMark files.
Stars: ✭ 26 (+23.81%)
Mutual labels:  github-action
github-action-benchmark
GitHub Action for continuous benchmarking to keep performance
Stars: ✭ 592 (+2719.05%)
Mutual labels:  github-action
domhttpx
domhttpx is a google search engine dorker with HTTP toolkit built with python, can make it easier for you to find many URLs/IPs at once with fast time.
Stars: ✭ 59 (+180.95%)
Mutual labels:  http-client
bow-openapi
🌐 Functional HTTP client generator from an OpenAPI/Swagger specification.
Stars: ✭ 47 (+123.81%)
Mutual labels:  http-client
nightfall dlp action
GitHub Data Loss Prevention (DLP) Action: Scan Pull Requests for sensitive data, like credentials & secrets, PII, credit card numbers, and more.
Stars: ✭ 46 (+119.05%)
Mutual labels:  github-action
setup-julia
This action sets up a Julia environment for use in actions by downloading a specified version of Julia and adding it to PATH.
Stars: ✭ 56 (+166.67%)
Mutual labels:  github-action
assign-one-project-github-action
Automatically add an issue or pull request to specific GitHub Project(s) when you create and/or label them.
Stars: ✭ 140 (+566.67%)
Mutual labels:  github-action
http-requests
An HTTP client abstraction that provides a common interface to several different client implementations.
Stars: ✭ 22 (+4.76%)
Mutual labels:  http-client

🍉 Watermelon HTTP client - GitHub Action

A Typescript Action that performs HTTP requests within your workflow. It supports GraphQL!

Build

Inputs

Argument Description Default
url Endpoint to query https://api.github.com. If graphql is set, then https://api.github.com/graphql
method HTTP method GET
headers JSON encoded HTTP headers Empty by default. If no headers are supplied, GraphQL queries will be sent with {'Content-Type': 'application/json'}
data JSON encoded HTTP request payload
graphql GraphQL query/mutation to execute Empty by default. If defined, the data field is automatically populated with this payload and the method is set to POST
variables JSON encoded variables for the GraphQL mutation
operation_name name of the entrypoint GraphQL operation if multiple are defined in graphql
fail_fast wether to fail upon HTTP error responses (e.g. 400, 500) false
verbose wether to print info-level statements or not false

Outputs

Name Description
status Numeric response status code
headers JSON encoded response HTTP headers
response JSON encoded response

Examples

Complete workflow file examples for the majority of supported HTTP requests can be found in .github/workflows.

GET

workflow file - sample output

uses: CamiloGarciaLaRotta/watermelon-http-client@v1
with:
  url: 'https://jsonplaceholder.typicode.com/todos?id=1'

POST

workflow file - sample output

uses: CamiloGarciaLaRotta/watermelon-http-client@v1
with:
  url: 'https://jsonplaceholder.typicode.com/todos'
  method: post
  data: '{ "title": "dummy-todo", "userId": 1, "completed": false }'

GraphQL Query

workflow file - sample output

uses: CamiloGarciaLaRotta/watermelon-http-client@v1
with:
url: 'https://countries.trevorblades.com/'
  graphql: |
    {
      country(code: "CO") {
        name
        emoji
      }
    }

GraphQL Mutation

workflow file - sample output

uses: CamiloGarciaLaRotta/watermelon-http-client@v1
with:
  headers: '{"Authorization": "bearer ${{ secrets.TOKEN }}", "Content-Type": "application/json" }'
  graphql: |
    mutation addRocketEmoji($reaction:AddReactionInput!) {
      addReaction(input:$reaction) {
        reaction {
          content
        }
        subject {
          id
        }
      }
    }
  variables: |
    {
      "reaction": {
        "subjectId":"${{ secrets.ISSUE_ID }}",
        "content":"ROCKET"
      }
    }

Contributing

See the contribution guidelines ❤️

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].