Endpoints públicos e parâmetros de busca

TLDR: Notas de referência sobre os endpoints de verificação de telefone, perfil do usuário e perfil público do terapeuta, mais os parâmetros de busca aceitos via Ransack.

Conteúdo herdado do README.md da raiz do repo. Descreve comportamento observado e documentado à mão, não gerado a partir do código — confira contra config/routes.rb e os controllers antes de depender de um detalhe específico. A coleção executável está no Postman (link no README.md da raiz).

Verificação de telefone

POST /api/v1/phones_verification

   
Params { phone: "" }
Resposta {}
  • Não dispara novamente se a última chamada foi há menos de 40 segundos.
  • Ignora se o telefone já estiver validado.

PUT /api/v1/phones_verification

   
Params { verification: { pin: "XYZ123" } }
Resposta {}, status 200
  • Ignora se já estiver validado.
  • Se o código estiver correto, marca o datetime user.phone_number_validated_at.

Perfil do usuário

PUT /api/v1/me/

Atributos aceitos:

  • address_attributes: street, number, country, city, region, external_gateway_id, external_gateway_url
  • document_type
  • document_number
  • birth_date
  • gender

Terapeuta

GET /api/v1/terapeuta/:slug/availability?from=2023-07-19&to=2023-07-23

Retorna a disponibilidade do terapeuta sempre em janelas de 4 dias. A API cruza os eventos de meetings com a disponibilidade cadastrada e retorna apenas o que está de fato livre.

GET /api/v1/terapeuta/:slug

Retorna o perfil público do terapeuta.

Parâmetros de busca (Ransack)

Filtro Exemplo
Idiomas &q[languages_cont_any][]=Alemão&q[languages_cont_any][]=Português
Tags / experiência (associação polimórfica) ?q[tag_options_slug_cont_any]=adolescencia&q[tag_options_slug_cont_any]=abuso
Gênero &q[genre]=male, ?q[gender_eq]=female, ?q[gender_eq]=non_binary
Nome do usuário &q[user_name_cont]=dj
Localidade ?q[user_user_addresses_full_address_cont]=Rua tal

Referências