API - Trying to manual send a release

Hey there,

Well I’m having issues with the API call to manual send an release to the downloader.

I’m making an POST call with a string entity with the release in JSON format. It does aswell contains the X-Api-Key with the apikey.

The url I’m sending it to is: …/api/release

Here is the JSON release I send with the call:

{
  "absoluteEpisodeNumbers": [
    
  ],
  "downloadProtocol": "torrent",
  "downloadUrl": "http://torcache.net/torrent/FC665B314C9F6EE414BACE19C025AE9B1BC23E14.torrent?title\u003d[kickass.to]marvels.agents.of.s.h.i.e.l.d.s02e16.720p.hdtv.x264.killers",
  "episodeNumbers": [
    16,
  ],
  "indexer": "KickassTorrents",
  "infoUrl": "http://kickass.to/marvels-agents-of-s-h-i-e-l-d-s02e16-720p-hdtv-x264-killers-t10471816.html",
  "language": "english",
  "protocol": "torrent",
  "publishDate": "2015-04-08T02:10:47Z",
  "quality": {
    "quality": {
      "name": "HDTV-720p",
      "id": 4
    },
    "revision": {
      "real": 0,
      "version": 1
    }
  },
  "rejections": [
    "Existing file meets cutoff: HDTV-720p",
    "Quality for existing file on disk is of equal or higher preference: HDTV-720p v1"
  ],
  "releaseGroup": "KILLERS",
  "releaseHash": "",
  "seriesTitle": "marvelsagentsshield",
  "title": "Marvels Agents of S H I E L D S02E16 720p HDTV x264-KILLERS",
  "ageHours": 14.814927141666667,
  "ageMinutes": 888.8956291333334,
  "size": 1144312535,
  "age": 0,
  "approved": false,
  "downloadAllowed": true,
  "fullSeason": false,
  "isAbsoluteNumbering": false,
  "isDaily": false,
  "isPossibleSpecialEpisode": false,
  "qualityWeight": 401,
  "rejected": true,
  "releaseWeight": 4,
  "sceneSource": false,
  "seasonNumber": 2,
  "special": false,
  "temporarilyRejected": false,
  "tvRageId": 0
}

But I’m getting an Internal server error. After looking in the logs I get the follow error:

Message
Request Failed: Argument cannot be null.
Parameter name: key

Exception
System.ArgumentNullException: Argument cannot be null.
Parameter name: key
at System.Collections.Concurrent.ConcurrentDictionary`2<string, NzbDrone.Common.Cache.Cached`1/CacheItem<NzbDrone.Core.Parser.Model.RemoteEpisode>>.CheckKey (string) <0x00040>
at System.Collections.Concurrent.ConcurrentDictionary`2<string, NzbDrone.Common.Cache.Cached`1/CacheItem<NzbDrone.Core.Parser.Model.RemoteEpisode>>.TryGetValue (string,NzbDrone.Common.Cache.Cached`1/CacheItem<NzbDrone.Core.Parser.Model.RemoteEpisode>&) <0x0002f>
at NzbDrone.Common.Cache.Cached`1<NzbDrone.Core.Parser.Model.RemoteEpisode>.Find (string) <0x00033>
at NzbDrone.Api.Indexers.ReleaseModule.DownloadRelease (NzbDrone.Api.Indexers.ReleaseResource) [0x00000] in m:\BuildAgent\work\6c3239faf2b92630\src\NzbDrone.Api\Indexers\ReleaseModule.cs:56
at NzbDrone.Api.Indexers.ReleaseModule.<.ctor>b__0 (object) [0x00000] in m:\BuildAgent\work\6c3239faf2b92630\src\NzbDrone.Api\Indexers\ReleaseModule.cs:47
at (wrapper dynamic-method) object.CallSite.Target (System.Runtime.CompilerServices.Closure,System.Runtime.CompilerServices.CallSite,System.Func`2<object, object>,object) <IL 0x00038, 0x000af>
at Nancy.Routing.Route/<>c__DisplayClass4.<Wrap>b__3 (object,System.Threading.CancellationToken) <IL 0x0005f, 0x0012f>

I myself was thinking about an apikey that is null but its not.

Hope you guys can help me out.

Sounds like the same issue as: Manual download via Api

Thanks got it working!

Sorry for this unnecessary topic. As there was already one opened.

really, the guid is the only thing that’s used.