요나는 하나님의 말씀을 전하던 선지자로, 가드헤벨 출신 아밋대의 아들입니다. 열왕기하는 요아스의 아들 여로보암이 이스라엘의 영토를 하맛 어귀에서 아라바 바다까지 회복한 일이 요나를 통해 전해진 말씀대로 이루어졌다고 합니다. 이 일이 요나서의 니느웨 여행보다 앞인지 뒤인지는 밝히지 않습니다.
하나님은 요나에게 큰 성읍 니느웨로 가서 그들의 악을 꾸짖으라고 하셨습니다. 그러나 요나는 하나님을 피해 다시스로 달아나려고 욥바로 내려갔습니다. 다시스로 가는 배를 만나 삯을 내고 배에 올랐습니다.
하나님이 바다에 큰 바람을 보내시자 배가 부서질 만큼 폭풍이 거세졌습니다. 사공들은 각자 자기 신을 부르며 짐을 바다에 던졌지만, 요나는 배 밑층에서 깊이 잠들어 있었습니다. 선장은 그를 깨워 하나님께 구하라고 했습니다. 사람들은 누구 때문에 재앙이 닥쳤는지 알아보려고 제비를 뽑았고 요나가 뽑혔습니다. 요나는 자신이 히브리 사람이며 바다와 육지를 지으신 하나님을 경외한다고 말했습니다. 하나님을 피해 도망하고 있다는 사실도 알렸습니다.
요나는 폭풍이 자기 때문에 왔다며, 자신을 바다에 던지면 바다가 잔잔해질 것이라고 했습니다. 사공들은 먼저 힘껏 노를 저어 육지로 돌아가려 했지만 바다가 더 거세져 갈 수 없었습니다. 그들은 요나의 생명 때문에 자신들을 멸하지 말고 무죄한 피의 책임을 묻지 말아 달라고 하나님께 구했습니다. 요나를 바다에 던지자 폭풍이 멎었습니다. 사공들은 하나님을 크게 두려워하며 제물을 드리고 서원했습니다.
하나님은 큰 물고기를 준비해 요나를 삼키게 하셨고, 요나는 사흘 낮과 사흘 밤을 그 배 속에 있었습니다. 물고기 속에서 요나는 하나님께 기도했습니다. 깊은 물과 파도, 바다 풀이 자신을 둘렀던 일을 말하고, 하나님이 생명을 구덩이에서 건지셨다고 고백했습니다. 감사하며 제물을 드리고 서원, 곧 하나님께 드린 약속을 지키겠다고 했습니다. 하나님이 명하시자 물고기는 요나를 육지에 토해 냈습니다.
하나님의 말씀이 두 번째로 요나에게 임했습니다. 이번에는 요나가 말씀대로 니느웨에 갔습니다. 요나서는 니느웨를 사흘 길이 되는 큰 성읍이라고 소개합니다. 요나는 성 안으로 하룻길을 들어가 사십 일이 지나면 니느웨가 무너질 것이라고 외쳤습니다.
니느웨 사람들은 하나님을 믿고 금식을 선포하며 높은 사람부터 낮은 사람까지 굵은 베옷을 입었습니다. 왕도 왕복을 벗고 베옷을 입은 채 재 위에 앉았습니다. 왕과 대신들은 사람과 가축이 먹거나 마시지 말고 베옷을 입으며, 하나님께 힘써 부르짖고 악한 길과 폭력에서 떠나라고 명했습니다. 하나님이 진노를 거두셔서 멸망을 피할 수 있을지 모른다는 말도 전했습니다. 하나님은 그들이 악한 길에서 돌이킨 것을 보시고, 말씀하신 재앙을 내리지 않으셨습니다.
요나는 이 일을 크게 싫어하며 화를 냈습니다. 그는 하나님이 은혜롭고 자비로우시며 노하기를 더디하시고 사랑이 크셔서 재앙을 거두시는 분임을 알고 있었다고 말했습니다. 그래서 고국에 있을 때 다시스로 도망했다고 기도했습니다. 요나는 사는 것보다 죽는 것이 낫다며 생명을 거두어 달라고 했습니다. 하나님은 요나의 분노가 합당한지 물으셨습니다.
요나는 성읍 동쪽으로 나가 초막을 짓고 그늘 아래 앉아 니느웨가 어떻게 되는지 지켜보았습니다. 하나님은 박 넝쿨을 준비해 요나의 머리 위에 그늘을 드리우고 괴로움을 덜게 하셨습니다. 요나는 그 넝쿨 때문에 크게 기뻐했습니다.
이튿날 새벽 하나님이 준비하신 벌레가 넝쿨을 갉아먹자 넝쿨이 시들었습니다. 해가 뜰 때 뜨거운 동풍이 불었고 햇빛이 요나의 머리에 내리쬐었습니다. 요나는 기운을 잃고 다시 죽는 것이 낫다고 했습니다. 하나님이 넝쿨 때문에 화내는 것이 합당한지 물으시자, 요나는 죽을 만큼 화내도 합당하다고 답했습니다.
하나님은 요나가 수고하거나 기르지 않았으며 하룻밤 사이에 났다가 사라진 넝쿨을 아꼈다고 말씀하셨습니다. 니느웨에는 오른쪽과 왼쪽을 구별하지 못하는 사람이 십이만여 명이고 가축도 많다고 하셨습니다. 하나님은 그런 큰 성읍을 아끼는 것이 어찌 합당하지 않겠느냐고 물으셨습니다.
요나서는 하나님의 질문으로 끝납니다. 요나가 그 질문에 어떻게 답했는지는 전하지 않습니다.