본관은 의성(義城). 자는 덕휴(德休), 호는 팔오헌(八吾軒) 또는 해촌(海村). 의성 출신. 김득가(金得可)의 증손으로, 할아버지는 김율(金瑮)이고, 아버지는 용양위부호군 김추길(金秋吉)이며, 어머니는 유화(柳華)의 딸이다.
1662년(현종 3) 사마시를 주1 1669년 식년 문과에 갑과로 주2, 전적(典籍) · 무안현감 · 직강(直講) · 지평(持平) · 수찬(修撰) · 정언(正言) 등을 지냈다.
수찬 재직시 국가재정에 관하여 각사(各司)의 비용과 내탕비(內帑費)를 줄여 진휼비에 보충하는 일과, 경사(經史)를 열심히 강론하여 치도(治道)를 구하는 일 등 수천언의 소를 올렸고, 정언 재직시에는 당시 형조판서 남구만(南九萬)이 진휼비를 탕감했다고 고발하였다.
1679년(숙종 5) 장령(掌令) 재직시 남인이 청남(淸南)과 탁남(濁南)으로 나누어지면서 논핵(論劾)되어 정의(旌義: 지금의 제주도) 등의 벽지로 주3
1689년 기사환국으로 남인이 정권을 장악하자 복관되어 대사성 · 집의(執義) · 헌납(獻納) · 좌승지 · 강원도관찰사 · 병조참지 등을 거쳐, 호조참의를 역임하였다. 그 뒤 갑술환국으로 노론이 득세하자 향촌에 물러나서 서사(書史)를 즐기다가 일생을 마쳤다.
관직생활에 있어서 공사를 분명히 하였다. 안동의 백록사(柏麓祠)에 제향되었고, 저서로는 『팔오헌집(八吾軒集)』이 주4