Webhooks payload was different from Docs

circle.yml

#1

I have set webhooks Notification in circle.yml and it works but the payload was very strange, not fit the documents

here is my circle.yml files setting

I got the payload and parser error,here is Sentry Error Info

body:
{ payload: '{"webhook_url":"https://hooks.pubu.im/services/y6drnekn2enkc9","attachments":[{"color":"danger","text":"*An exception occurred while doing*:POST \u003c/admin/users\u003e\\n","fields":[{"title":"Exception","value":"ActiveModel::ForbiddenAttributesError"},{"title":"Backtrace","value":"```/var/www/readio/shared/bundle/ruby/2.2.0/gems/activemodel-4.2.6/lib/active_model/forbidden_attributes_protection.rb:21:insanitize_for_mass_assignment’\n/var/www/readio/shared/bundle/ruby/2.2.0/gems/activerecord-4.2.6/lib/active_record/attribute_assignment.rb:33:in assign_attributes\'\\n/var/www/readio/shared/bundle/ruby/2.2.0/gems/activerecord-4.2.6/lib/active_record/core.rb:566:ininit_attributes’\n/var/www/readio/shared/bundle/ruby/2.2.0/gems/activerecord-4.2.6/lib/active_record/core.rb:281:in initialize\'\\n/var/www/readio/shared/bundle/ruby/2.2.0/gems/activerecord-4.2.6/lib/active_record/inheritance.rb:61:innew’"},{"title":"Data","value":"app: readio_camellia```"}],“mrkdwn_in”:[“text”,“fields”]}],“text”:""}’ }`

headers:
{ accept: */*, accept-encoding: gzip;q=1.0,deflate;q=0.6,identity;q=0.3, connection: close, content-length: 1430, content-type: application/x-www-form-urlencoded, host: hooks.pubu.im, user-agent: Ruby, x-forwarded-for: 121.196.224.243, x-forwarded-proto: https, x-newrelic-id: VQcEUFdXARABUllWBAcEVg==, x-newrelic-transaction: PxQHAgVaCAVTUVNTB1cFVVQJFB8EBw8RVU4aUltbDQIFBgxTAFFVUFcGD0NKQQkHA11VVQZSFTs=, x-real-ip: 121.196.224.243 }

the correct payload may like this :

{ "payload": { "compare": "https://github.com/trigged/testPu/compare/b77556a04dc5...a26bfc79cadb", "previous_successful_build": null, "build_parameters": null, "oss": true, "committer_date": "2015-08-04T19:53:42+08:00", "steps": [ { "name": "Starting the build", "actions": [ { "truncated": false, "index": 0, "command": "Starting the build", "parallel": false, "failed": null, "infrastructure_fail": null, "name": "Starting the build", "bash_command": null, "status": "success", "timedout": null, "continue": null, "end_time": "2015-08-04T11:56:57.197Z", "type": "infrastructure", "messages": [], "start_time": "2015-08-04T11:56:56.725Z", "exit_code": null, "canceled": null, "step": 0, "run_time_millis": 472, "has_output": false } ] }, { "name": "Start container", "actions": [ { "truncated": false, "index": 0, "command": "Start container", "parallel": true, "failed": null, "infrastructure_fail": null, "name": "Start container", "bash_command": null, "status": "success", "timedout": null, "continue": null, "end_time": "2015-08-04T11:57:01.916Z", "source": "config", "type": "infrastructure", "messages": [], "output_url": "https://circle-production-action-output.s3.amazonaws.com/4f9d3bfa273b0d7f988a0c55-trigged-testPu-1-0?AWSAccessKeyId=AKIAI3VNUNBFDODWKRVA&Expires=1596542226&Signature=WwQq3Hk0ZZ2zVD6V4mxzY8qTFS8%3D", "start_time": "2015-08-04T11:56:57.205Z", "exit_code": 0, "canceled": null, "step": 1, "run_time_millis": 4711, "has_output": true } ] }, { "name": "Enable SSH", "actions": [ { "truncated": false, "index": 0, "command": "Enable SSH", "parallel": true, "failed": null, "infrastructure_fail": null, "name": "Enable SSH", "bash_command": null, "status": "success", "timedout": null, "continue": null, "end_time": "2015-08-04T11:57:03.307Z", "type": "infrastructure", "messages": [], "output_url": "https://circle-production-action-output.s3.amazonaws.com/5f9d3bfa273b0d7fd88a0c55-trigged-testPu-2-0?AWSAccessKeyId=AKIAI3VNUNBFDODWKRVA&Expires=1596542226&Signature=PS%2FSs8dBIQGvqHui5nrPj3YSe2E%3D", "start_time": "2015-08-04T11:57:01.925Z", "exit_code": null, "canceled": null, "step": 2, "run_time_millis": 1382, "has_output": true } ] }, { "name": "Restore source cache", "actions": [ { "truncated": false, "index": 0, "command": "Restore source cache", "parallel": false, "failed": null, "infrastructure_fail": null, "name": "Restore source cache", "bash_command": null, "status": "success", "timedout": null, "continue": null, "end_time": "2015-08-04T11:57:03.425Z", "source": "cache", "type": "checkout", "messages": [], "start_time": "2015-08-04T11:57:03.318Z", "exit_code": null, "canceled": null, "step": 3, "run_time_millis": 107, "has_output": false } ] }, { "name": "Checkout using deploy key: 07:3b:d9:ec:a3:d4:05:de:31:56:e2:cf:80:81:6e:93", "actions": [ { "truncated": false, "index": 0, "command": "Checkout using deploy key: 07:3b:d9:ec:a3:d4:05:de:31:56:e2:cf:80:81:6e:93", "parallel": true, "failed": null, "infrastructure_fail": null, "name": "Checkout using deploy key: 07:3b:d9:ec:a3:d4:05:de:31:56:e2:cf:80:81:6e:93", "bash_command": null, "status": "success", "timedout": null, "continue": null, "end_time": "2015-08-04T11:57:06.255Z", "source": "config", "type": "checkout", "messages": [], "output_url": "https://circle-production-action-output.s3.amazonaws.com/7f9d3bfa273b0d7ff88a0c55-trigged-testPu-4-0?AWSAccessKeyId=AKIAI3VNUNBFDODWKRVA&Expires=1596542226&Signature=5HZf8%2FFdph%2F1%2BvnTilFSg2O6gWY%3D", "start_time": "2015-08-04T11:57:03.434Z", "exit_code": 0, "canceled": null, "step": 4, "run_time_millis": 2821, "has_output": true } ] }, { "name": "Configure the build", "actions": [ { "truncated": false, "index": 0, "command": "Configure the build", "parallel": false, "failed": null, "infrastructure_fail": null, "name": "Configure the build", "bash_command": null, "status": "success", "timedout": null, "continue": null, "end_time": "2015-08-04T11:57:06.322Z", "source": "cache", "type": "machine", "messages": [], "start_time": "2015-08-04T11:57:06.267Z", "exit_code": null, "canceled": null, "step": 5, "run_time_millis": 55, "has_output": false } ] }, { "name": "Disable SSH", "actions": [ { "truncated": false, "index": 0, "command": "Disable SSH", "parallel": true, "failed": null, "infrastructure_fail": null, "name": "Disable SSH", "bash_command": null, "status": "success", "timedout": null, "continue": null, "end_time": "2015-08-04T11:57:06.338Z", "type": "teardown", "messages": [], "start_time": "2015-08-04T11:57:06.330Z", "exit_code": null, "canceled": null, "step": 7, "run_time_millis": 8, "has_output": false } ] } ], "body": "", "usage_queued_at": "2015-08-04T11:56:55.683Z", "retry_of": 62, "reponame": "testPu", "ssh_users": [], "build_url": "https://circleci.com/gh/trigged/testPu/63", "parallel": 1, "failed": null, "branch": "master", "username": "trigged", "author_date": "2015-08-04T19:53:42+08:00", "why": "retry", "user": { "is_user": true, "login": "trigged", "name": null, "email": "trigged@live.cn" }, "vcs_revision": "a26bfc79cadb6b821df0f16468d01e8541e325e8", "owners": [], "build_num": 63, "infrastructure_fail": false, "ssh_enabled": null, "committer_email": "trigged@gmail.com", "previous": { "build_time_millis": 12221, "status": "no_tests", "build_num": 62 }, "status": "no_tests", "committer_name": "trigged", "pull_request_urls": [], "retries": null, "subject": "Merge branch 'master' into feature/at_notify 0464c10 ", "timedout": false, "dont_build": null, "feature_flags": {}, "lifecycle": "finished", "stop_time": "2015-08-04T11:57:06.469Z", "build_time_millis": 10182, "circle_yml": { "string": "notify:\n webhooks:\n # A list of hook hashes, containing the url field\n - url: http://trigged.pagekite.me/services/46z26r1nqd3btk1\n" }, "messages": [ { "type": "warning", "message": "It looks like we couldn't infer test settings for your project. Refer to our \"<a href='https://circleci.com/docs/manually'>Setting your build up manually</a>\" document to get started. It should only take a few minutes." } ], "is_first_green_build": false, "job_name": null, "start_time": "2015-08-04T11:56:56.287Z", "canceler": null, "all_commit_details": [ { "committer_date": "2015-08-04T19:53:42+08:00", "body": "", "branch": "master", "author_date": "2015-08-04T19:53:42+08:00", "committer_email": "trigged@gmail.com", "commit": "a26bfc79cadb6b821df0f16468d01e8541e325e8", "committer_login": "trigged", "committer_name": "trigged", "subject": "test", "commit_url": "https://github.com/trigged/testPu/commit/a26bfc79cadb6b821df0f16468d01e8541e325e8", "author_login": "trigged", "author_name": "trigged", "author_email": "trigged@gmail.com" } ], "outcome": "no_tests", "vcs_url": "https://github.com/trigged/testPu", "author_name": "trigged", "node": [ { "public_ip_addr": "54.157.202.104", "port": 64781, "username": "ubuntu", "image_id": "circletar-0895-9fad7-20150702T080712Z", "ssh_enabled": null } ], "queued_at": "2015-08-04T11:56:55.890Z", "canceled": false, "author_email": "trigged@gmail.com" } }


#2