Seus dados

Cadastrar ou editar uma vaga externa

Escreve na sua lista. Com um id novo (um uuid v4 aleatório que você gera com crypto.randomUUID(), nunca derivado do link ou de outro dado: o id é global, e um previsível colidiria com o de outra conta e diria se ele já existe), cria a vaga externa e responde 201; com o id de uma que já é sua, edita e responde 200, e campo omitido fica como está. Repetir o mesmo PUT não cria outra: é assim que a criação é idempotente sem POST. Na criação, empresa e cargo são obrigatórios, mas o link pode trazê-los: link de vaga do Ashby, do Greenhouse ou do Lever é lido na API pública do ATS (timeout de poucos segundos) e preenche o que você não mandou; se não der, a resposta é 422 pedindo o campo. Link de uma vaga que já está no catálogo responde 409 in_catalog com o slug dela: acompanhe com PUT /api/v1/eu/vagas/{slug}. O mesmo link duas vezes na sua lista responde 409 conflict. link com null (ou texto vazio) apaga. Mudar só a etapa é mandar só etapa; ela só mexe em atualizada_em quando muda. nota_no_historico vai no histórico da vaga (na criação, no evento de entrada; sem etapa, como nota solta). nota é o nome antigo do mesmo campo, aceito por compatibilidade: a primeira nota, que vai pro histórico (desde 2026-10-12 a vaga externa não tem mais nota à parte), e na resposta nota é a nota mais antiga do histórico. desfecho só vale com a etapa encerrada (a mandada ou a atual; fora dela, 422), e sair de Encerrada limpa. Até 500 externas por conta, e até 200 em andamento (toda etapa menos encerrada): criar além de um dos dois responde 409 conflict; editar, inclusive reabrir uma encerrada, nunca é recusado pelo teto. Criar e editar têm limite próprio por conta, além do geral: 60 a cada 10 minutos e 200 por dia (passou, 429 rate_limited com Retry-After). Campo desconhecido no corpo responde 422.

put/api/v1/eu/externas/{id}

Request

  • Base URL: https://rebasedev.com.br
  • URL: https://rebasedev.com.br/api/v1/eu/externas/{id}
  • Auth: HTTP bearer

Path parameters

idstring uuid required

O id da vaga externa: um uuid v4. Na criação, gerado por você, aleatório (crypto.randomUUID()), nunca derivado do link; depois, o que sai no campo id de GET /api/v1/eu/externas. Id que não é uuid v4 responde 404.

Request body

empresastring

Obrigatória na criação, a menos que o link a traga.

cargostring

Obrigatório na criação, a menos que o link o traga.

linkstring nullable

Endereço completo, http:// ou https://. Do Ashby, Greenhouse ou Lever, preenche cargo e empresa. null apaga.

etapa'guardada' | 'aplicada' | 'processo' | 'oferta' | 'encerrada'

A etapa, em slug ou no rótulo da tela. Na criação, o padrão é guardada (Salva).

notastring nullable

A primeira nota, que vai pro histórico: na criação, a nota do evento de entrada; na edição, a nota desta escrita (o mesmo que nota_no_historico, que é o nome novo). Nota do histórico não se edita nem se apaga: null ou vazio não muda nada. As duas com textos diferentes responde 422.

nota_no_historicostring nullable

O que aconteceu, numa linha nova do histórico (junto da mudança de etapa, se houver).

desfecho'aceitei_oferta' | 'recusei_oferta' | 'nao_passei' | 'sem_resposta' | 'desisti' | 'vaga_fechada' | 'null' nullable

Como o processo acabou, em slug: aceitei_oferta (Aceitei a oferta), recusei_oferta (Recusei a oferta), nao_passei (Não passei), sem_resposta (Sem resposta), desisti (Desisti), vaga_fechada (A vaga foi fechada). Só com a etapa encerrada; null nas outras e quando você não disse.

Example request

{
  "empresa": "Acme",
  "cargo": "Engineering Manager",
  "link": "https://jobs.lever.co/acme/0b5a3c2e-1f4d-4e6a-9b8c-7d2e1f0a9b3c",
  "etapa": "aplicada",
  "nota": "Indicação do Pedro."
}

Response

Editada.

Example response

{
  "data": {
    "externa": true,
    "id": "6f1c2a3b-4d5e-4f60-8a7b-9c0d1e2f3a4b",
    "empresa": "Acme",
    "cargo": "Engineering Manager",
    "link": "https://jobs.lever.co/acme/0b5a3c2e-1f4d-4e6a-9b8c-7d2e1f0a9b3c",
    "url_da_ficha": "https://rebasedev.com.br/vagas/minhas/externas/6f1c2a3b-4d5e-4f60-8a7b-9c0d1e2f3a4b",
    "nota": "Indicação do Pedro.",
    "etapa": "processo",
    "etapa_rotulo": "Em processo",
    "salva_em": "2026-09-28T13:00:00.000+00:00",
    "atualizada_em": "2026-10-06T17:00:00.000+00:00",
    "editada_em": "2026-10-08T12:30:00.000+00:00",
    "cv": null,
    "desfecho": null,
    "desfecho_rotulo": null,
    "historico": [
      {
        "em": "2026-10-01T21:30:00.000+00:00",
        "etapa_antes": "guardada",
        "etapa": "aplicada",
        "etapa_rotulo": "Aplicada",
        "nota": "Mandei pelo site, com carta."
      },
      {
        "em": "2026-09-26T13:00:00.000+00:00",
        "etapa_antes": null,
        "etapa": "guardada",
        "etapa_rotulo": "Salva",
        "nota": null
      }
    ]
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.