Solved

Contagem de chamadas API

  • 4 September 2023
  • 1 reply
  • 111 views

Userlevel 1
Badge

  Bom dia! Criei um código que faz chamadas na API do pipefy e busca todos os cards de um determinado pipe.
No total eu tenho um pouco mais de 1000 cards nesse pipe, pela lógica, sendo 50 registros por página, seriam aproximadamente 20 chamadas na API. Acredito que as chamadas não estão sendo contabilizadas corretamente, já que no último mês nosso consumo passou de 100k. No dia 01/09 o consumo estava em 2k, sendo que não havia feito nenhuma chamada. Existe alguma maneira de contabilizar as chamadas por aqui? Quero saber porque esse consumo está tão alto.

Segue trecho do código que faz as chamadas:
 

def get_all_cards(pipe_id, page_size):
all_cards = []
after = None
has_next_page = True

while has_next_page:
query = '''
query GetCards($pipeId: ID!, $pageSize: Int!, $after: String) {
cards(pipe_id: $pipeId, first: $pageSize, after: $after) {
edges {
node {
id
fields {
date_value
datetime_value
filled_at
float_value
indexName
name
native_value
report_value
updated_at
value
}
title
updated_at
created_at
current_phase {
name
}
pipe {
name
}
attachments {
url
path
field {
id
}
}
creatorEmail
}
cursor
}
pageInfo {
hasNextPage
endCursor
}
}
}
'''

variables = {
"pipeId": pipe_id,
"pageSize": page_size,
"after": after
}

response = requests.post(url, json={'query': query, 'variables': variables}, headers=headers)
data = response.json()

if 'data' in data and 'cards' in data['data']:
cards = data['data']['cards']
all_cards.extend([edge['node'] for edge in cards['edges']])
has_next_page = cards['pageInfo']['hasNextPage']
if 'endCursor' in cards['pageInfo']:
after = cards['pageInfo']['endCursor']
else:
after = None
else:
break
return all_cards

pipe_id = "XXXXXX"
page_size = 51
cards = get_all_cards(pipe_id, page_size)

 

icon

Best answer by Lais Laudari 4 September 2023, 20:21

View original

1 reply

Userlevel 7

Olá @juliana-opis!

Cada chamada no endpoint/Graphql é contada como uma chamada de API. A solicitação pode ser uma mutation ou query.

1 solicitação = 1 chamada de API.

Você pode encontrar mais detalhes nestes dois artigos abaixo:

https://help.pipefy.com/pt-BR/articles/5419654-o-que-fazer-quando-atingir-o-limite-de-automacoes-integracoes-ou-apis

https://help.pipefy.com/pt-BR/articles/5580799-como-usar-a-api-do-pipefy


Caso ainda tenha alguma dúvida sobre seu uso, sugiro que entre em contato com nosso time de suporte através do chat na plataforma para que eles possam verificar.😉

Reply