             expect(getResponse.body).to.deep.equal []
 
         it 'should should reject POSTs with a missing API key', Promise.coroutine ->
-            yield setupDatabase []
-
             a = gc '100', meta: updated: new Date().toISOString()
 
             try
                 putResponse = yield request
-                    .put "#{url}/geocaches"
+                    .post "#{url}/geocache"
                     .set 'Content-Type', 'application/json'
-                    .send [a]
+                    .send a
             catch err
+                # expected
 
             expect(err.status).to.equal 403
 

            expect(response.body).to.include.members ['GC100', 'GC101']

        it 'should filter by age using "maxAge"', Promise.coroutine ->
            yield setupDatabase [
                gc '100',
                    UTCPlaceDate: "/Date(#{new Date().getTime()}-0000)/"
                gc '101',
                    UTCPlaceDate: '/Date(946684800-0000)/'
            ]
            response = yield request
                .get "#{url}/gcs"

            expect(response.body).to.include.members ['GC100']

        it 'should filter by type id using "typeIds"', Promise.coroutine ->
            yield setupTestData [
                gc '100', CacheType: GeocacheTypeId: 5
                gc '101', CacheType: GeocacheTypeId: 6
                gc '102', CacheType: GeocacheTypeId: 7
            ]
            response = yield request
                .get "#{url}/gcs"
                .query typeIds: [5, 7]
                .set 'Accept', 'application/json'
            expect(response.type).to.equal 'application/json'
            expect(response.body.length).to.equal 2
            expect(response.body).to.include.members ['GC100', 'GC102']

        it 'should filter disabled/archived geocaches using "excludeDisabled"', Promise.coroutine ->
            yield setupTestData [
                gc '100',
                    Archived: false
                    Available: false
                gc '101',
                    Archived: false
                    Available: true
                gc '102',
                    Archived: true
                    Available: false
                gc '103',
