Usar o Sheet Best no GitHub Actions
O Sheet Best é uma API REST padrão. Qualquer fluxo do GitHub Actions pode chamá-la em uma etapa run usando curl (ou qualquer cliente HTTP disponível no executor), sem uma ação personalizada.
Antes de começar
- Uma conexão do Sheet Best. Consulte o guia rápido.
- Um repositório do GitHub em que você possa adicionar ou editar fluxos de trabalho.
- Se a conexão estiver protegida, armazene a chave como segredo do repositório (por exemplo,
SHEETBEST_API_KEY). Consulte autenticação com chave de API.
Ler linhas (GET)
name: Read sheet
on: workflow_dispatch
jobs:
read:
runs-on: ubuntu-latest
steps:
- name: Fetch rows
env:
SHEETBEST_API_KEY: ${{ secrets.SHEETBEST_API_KEY }}
run: |
curl -sS \
-H "X-Api-Key: $SHEETBEST_API_KEY" \
"https://api.sheetbest.com/sheets/<id>"
Remova a linha -H "X-Api-Key: ..." se a conexão não estiver protegida. Para filtrar, adicione uma coluna e um valor à URL (por exemplo, /Status/active); consulte filtragem e consultas.
Gravar linhas (POST)
name: Append row
on:
push:
branches: [main]
jobs:
log:
runs-on: ubuntu-latest
steps:
- name: Append commit to sheet
env:
SHEETBEST_API_KEY: ${{ secrets.SHEETBEST_API_KEY }}
run: |
curl -sS -X POST \
-H "Content-Type: application/json" \
-H "X-Api-Key: $SHEETBEST_API_KEY" \
-d '{
"Commit": "${{ github.sha }}",
"Author": "${{ github.actor }}",
"Message": ${{ toJSON(github.event.head_commit.message) }}
}' \
"https://api.sheetbest.com/sheets/<id>"
O corpo pode ser um objeto ou um array de objetos (uma linha por elemento). Os nomes dos campos devem corresponder aos cabeçalhos das colunas da planilha.
Atualizar e excluir linhas
O mesmo padrão funciona com -X PATCH, -X PUT e -X DELETE. Para selecionar uma linha específica, inclua uma correspondência de coluna na URL, por exemplo:
curl -X PATCH \
-H "Content-Type: application/json" \
-d '{ "Status": "done" }' \
"https://api.sheetbest.com/sheets/<id>/Id/42"
Consulte atualizar linhas e excluir linhas.