Errors

"Errors are just conditions we refuse to take seriously." - Michael Feathers

Overview

Unexpected things happen. That's okay!

This part of the website is all about embracing the reality of errors, and trying to guide users in the right direction.

Each Jangle error should come along with a simple message and a link, like this one:

// GET /api/lists/authors/banana
{
  message: "Oops! 'banana' isn't a valid item ID.",
  link: 'https://www.jangle.io/errors/#invalid-id'
}

Clicking on one of those links should bring you here, where you can learn more about the issue if you get stuck.

More error guides incoming!

This piece of the site is still incomplete, so hang in there!

REST API

Here are some common errors that Jangle users run into when using the REST API.

See a problem here? Was something unhelpful? Please, let us know by updating this page on Github!

List not found

The problem

Jangle couldn't find a list with the name provided.

Things to check

  1. Was it a typo (like authos instead of authors)?
  2. Are you using the label instead of the slug?
    // Bad
    var url = '/api/lists/Blog Posts'
    // Good
    var url = '/api/lists/blog-posts'
    
  3. Did you mean to use /api/items instead of /api/lists?

List item not found

The problem

Jangle looked in the collection for an item with that id, and couldn't find anything.

Things to check

  1. Was the item recently removed?
  2. Are you looking in a different collection?
  3. Is your collection empty?

Where parameter

The problem

The where parameter should be a JSON object, documented in detail over here.

Things to check

  1. Did you use double-quotes on your properties? Javascript and JSON have slight differences!
    // Bad JSON
    { name: 'Ryan' }
    // Good JSON
    { "name": "Ryan" }
    
  2. Is the where option not an object? Values like false, null, [object Object], and undefined are commonly sent from JS by mistake.

No body provided

The problem

A create or update request was sent through, but Jangle didn't get a body with the item to create.

Without data, Jangle cannot fulfill the POST request.

Things to check

  1. Was the body missing from the request?
  2. Was the body not a valid JSON format?

Missing required fields

The problem

Jangle received a valid JSON body, but the item failed validation.

Required fields were missing from the request.

Things to check

  1. Which fields does the list require?
  2. Should we set a field to optional?

User token required

The problem

To protect your content from untrusted requests, Jangle provides a user token with a valid sign in request.

You can access the token with the User API's Sign In endpoint.

Things to check

  1. Did you provide a token with your POST request?
  2. Does the request have an Authorization header with a value like Bearer <your-token>?

Invalid user token

The problem

If a user token is provided that doesn't match, Jangle will make sure the request doesn't go through.

Things to check

  1. Has the user with the token been removed?
  2. Has the token changed? Maybe try signing in again.

Version not found

The problem

Jangle looked for that version of your item id, and couldn't find anything.

Things to check

  1. Was the version number too high?
  2. Is the version number invalid?