Welcome to Orion!

The Orion Panel allows you to change your account details, view your API key, make payments, and get support from the Orion team.

API Key

Easy Payment Process
Cheapest Prices  •  Additional Network Fees
Step 1
Make a direct Bitcoin payment from your wallet to ours.
Step 2
Select the package of your choice.

Step 3
Customer Invoice
Invoice Number:
Invoice Date:
Payment Status:
Payment Method:
Payment Date:
Customer Email:
Description Duration Price
    $
    Package Price:   $
    Subscription Discount: - $
    Coupon Discount: - $
    Payment Total:   $
    Payment Received:   $
    Step 4
    Due to discounts, you do not have to pay anything. Just complete the checkout to get your free subscription.
    Step 4
    In the next step a unique address will be generated for your deposit.

    Please do not continue to the next step if you do not intend to complete the purchaset, since you will unnecessarily waste one of our addresses.
    Step 5
    Transfer the indicated amount to our wallet together with the . You can send any amount you want. Your subscription will be recharged proportionally to the deposited amount.

    Make sure you enter the wallet address and the correctly, otherwise your payment will not go through and your funds will be lost.
    Payment Amount
    Payment Address
    Payment
    Payment Qr Code
    Step 6
    Your payment failed for an unknown reason. Please contact us about this problem.
    Your payment was successfully verified. Your account was recharged with the package for .
    Easy Payment Process
    Cheapest Prices  •  Additional Network Fees
    Step 1
    Make a direct altcoin payment from your wallet to ours.
    Step 2
    Select the package of your choice.

    Step 3
    Customer Invoice
    Invoice Number:
    Invoice Date:
    Payment Status:
    Payment Method:
    Payment Date:
    Customer Email:
    Description Duration Price
      $
      Package Price:   $
      Subscription Discount: - $
      Coupon Discount: - $
      Payment Total:   $
      Payment Received:   $
      Step 4
      Due to discounts, you do not have to pay anything. Just complete the checkout to get your free subscription.
      Step 4
      Select the coin you want to pay with.

      Step 5
      In the next step a unique address will be generated for your deposit.

      Please do not continue to the next step if you do not intend to complete the purchaset, since you will unnecessarily waste one of our addresses.
      Step 6
      Transfer the indicated amount to our wallet together with the . You can send any amount you want. Your subscription will be recharged proportionally to the deposited amount.

      Make sure you enter the wallet address and the correctly, otherwise your payment will not go through and your funds will be lost.
      Payment Amount
      Payment Address
      Payment
      Payment Qr Code
      Step 7
      Your payment failed for an unknown reason. Please contact us about this problem.
      Your payment was successfully verified. Your account was recharged with the package for .
      Easy Payment Process
      Reasonable Prices  •  Additional Third-Party Fees
      Purchase a voucher through our official reseller - no account needed.
      KeyOneClick has PayPal Express checkouts.


      KeyOneClick is currently under maintenance and their PayPal payment option might be unavailable. Please try again in a few hours. If you do not want to wait, send them an email and they will manually create a PayPal invoice for you.

      support@keyoneclick.com

      Easy Payment Process
      Reasonable Prices  •  Additional Third-Party Fees
      Purchase a voucher through our official reseller - no account needed.
      KeyOneClick allows card payments through PayPal and Skrill.
      UTop has card payments for some countries.


      Easy Payment Process
      Reasonable Prices  •  No Additional Fees
      Step 1
      Make a payment using PayPal express checkout, or using a credit or debit card through PayPal.
      Step 2
      Select the package of your choice.

      Step 3
      Customer Invoice
      Invoice Number:
      Invoice Date:
      Payment Status:
      Payment Method:
      Payment Date:
      Customer Email:
      Description Duration Price
        $
        Package Price:   $
        Subscription Discount: - $
        Coupon Discount: - $
        Payment Total:   $
        Payment Received:   $
        Step 4
        Due to discounts, you do not have to pay anything. Just complete the checkout to get your free subscription.
        Step 4
        We will now redirect you to PayPal's website to complete the purchase. Alternatively, you can complete the purchase from another device by scanning the QR code.
        Step 5
        Your payment failed for an unknown reason. Please contact us about this problem.
        Your payment was successfully verified. Your account was recharged with the package for .
        Difficult Payment Process
        Reasonable Prices  •  Additional Network & Third-Party Fees
        Step 1
        Purchase some Bitcoin from an online exchange.
        Step 2
        Select the package of your choice.

        Step 3
        Customer Invoice
        Invoice Number:
        Invoice Date:
        Payment Status:
        Payment Method:
        Payment Date:
        Customer Email:
        Description Duration Price
          $
          Package Price:   $
          Subscription Discount: - $
          Coupon Discount: - $
          Payment Total:   $
          Payment Received:   $
          Step 4
          Due to discounts, you do not have to pay anything. Just complete the checkout to get your free subscription.
          Step 4
          Note that most exchanges require ID verification for the first purchase.
          Step 5
          Purchase from one of the following exchanges.
          AnyCoinDirect
          https://anycoindirect.eu
          Available Locations:Worldwide
          Payment Methods:Credit Card, Sofort, GiroPay, SEPA, IDEAL, Bank Transfer
          Minimum Amount:$5
          ID Verification:Yes
          Phone Required:No
          Changelly
          https://changelly.com
          Available Locations:Worldwide
          Payment Methods:Credit Card
          Minimum Amount:$50
          ID Verification:Yes
          Phone Required:Yes
          Bitpanda
          https://bitpanda.com
          Available Locations:Worldwide
          Payment Methods:Credit Card, Skrill, Neteller, Sofort, GiroPay, Bank Transfer
          Minimum Amount:$25
          ID Verification:Yes
          Phone Required:Yes
          Coinbase
          https://coinbase.com
          Available Locations:Worldwide
          Payment Methods:Credit Card
          Minimum Amount:$50
          ID Verification:Yes
          Phone Required:Yes
          Coinmama
          https://coinmama.com
          Available Locations:Worldwide
          Payment Methods:Credit Card
          Minimum Amount:$100
          ID Verification:Yes
          Phone Required:Yes
          Step 6
          You can create your own wallet and pay us from there. Alternatively if you do not want to learn how works, you can directly send the to our wallet.
          Step 7
          In the next step a unique address will be generated for your deposit.

          Please do not continue to the next step if you do not intend to complete the purchaset, since you will unnecessarily waste one of our addresses.
          Step 8
          When you buy the , redeem the voucher or transfer the purchased directly into the wallet address provided below. Do not create your own wallet during the process, but use ours instead. You can send any amount you want. Your subscription will be recharged proportionally to the deposited amount.

          Make sure you enter the wallet address and the correctly, otherwise your payment will not go through and your funds will be lost.
          Payment Amount
          Any Amount
          Payment Address
          Payment
          Payment Qr Code
          Step 9
          Your payment failed for an unknown reason. Please contact us about this problem.
          Your payment was successfully verified. Your account was recharged with the package for .
          Easy Payment Process
          Reasonable Prices  •  Additional Network & Third-Party Fees
          Step 1
          Purchase an Orion voucher from a third-party reseller. Redeem the voucher instantly here on our website.
          Step 2
          Select the package of your choice.

          Step 3
          Customer Invoice
          Invoice Number:
          Invoice Date:
          Payment Status:
          Payment Method:
          Payment Date:
          Customer Email:
          Description Duration Price
            $
            Package Price:   $
            Subscription Discount: - $
            Coupon Discount: - $
            Payment Total:   $
            Payment Received:   $
            Step 4
            Due to discounts, you do not have to pay anything. Just complete the checkout to get your free subscription.
            Step 4
            Take note of the following when purchasing from a reseller:
            • Personal Details:
              The voucher code will be emailed to you, so make sure you enter a valid email address. The rest of the information, such as your name and postal address, can be anything you like.
            • VPNs and Proxies:
              If you have a VPN or proxy enabled, you might want to switch it off in order to see more payment options during the reseller's checkout process.
            • Voucher Delivery:
              The reseller will email you the voucher code. Make sure to check your spam folder and alternative email accounts if you used a different payment email address during payment.
            • Payment Problems:
              If you have any problems with the payment, or if the voucher code does not arrive, please contact the reseller. If the reseller cannot help, let us know and we will try to sort it out.
            Step 5
            Head over to KeyOneClick's website and buy a voucher. Once you received the voucher, continue this process in order to redeem it.
            Step 6
            Enter the voucher code you received from KeyOneClick.
            Step 7
            Your payment failed for an unknown reason. Please contact us about this problem.
            Your payment was successfully verified. Your account was recharged with the package for .
            Easy Payment Process
            Reasonable Prices  •  Additional Network & Third-Party Fees
            Step 1
            Purchase an Orion voucher from a third-party reseller. Redeem the voucher instantly here on our website.
            Step 2
            Select the package of your choice.

            Step 3
            Customer Invoice
            Invoice Number:
            Invoice Date:
            Payment Status:
            Payment Method:
            Payment Date:
            Customer Email:
            Description Duration Price
              $
              Package Price:   $
              Subscription Discount: - $
              Coupon Discount: - $
              Payment Total:   $
              Payment Received:   $
              Step 4
              Due to discounts, you do not have to pay anything. Just complete the checkout to get your free subscription.
              Step 4
              Take note of the following when purchasing from a reseller:
              • Personal Details:
                The voucher code will be emailed to you, so make sure you enter a valid email address. The rest of the information, such as your name and postal address, can be anything you like.
              • VPNs and Proxies:
                If you have a VPN or proxy enabled, you might want to switch it off in order to see more payment options during the reseller's checkout process.
              • Voucher Delivery:
                The reseller will email you the voucher code. Make sure to check your spam folder and alternative email accounts if you used a different payment email address during payment.
              • Payment Problems:
                If you have any problems with the payment, or if the voucher code does not arrive, please contact the reseller. If the reseller cannot help, let us know and we will try to sort it out.
              Step 5
              Head over to UTop's website and buy a voucher. Once you received the voucher, continue this process in order to redeem it.
              Step 6
              Enter the voucher code you received from UTop.
              Step 7
              Your payment failed for an unknown reason. Please contact us about this problem.
              Your payment was successfully verified. Your account was recharged with the package for .
              Easy Payment Process
              Cheapest Prices  •  No Additional Fees
              Step 1
              Redeem an Orion voucher or a voucher purchased from a reseller.
              Step 2
              Enter the voucher code and check its validity or redeem it.
              Step 3
              Your payment failed for an unknown reason. Please contact us about this problem.
              Your payment was successfully verified. Your account was recharged with the package for .
              Moderate Payment Process
              Reasonable Prices  •  Additional Network & Third-Party Fees
              Step 1
              Purchase a voucher from CryptoVoucher.
              Step 2
              Select the package of your choice.

              Step 3
              Customer Invoice
              Invoice Number:
              Invoice Date:
              Payment Status:
              Payment Method:
              Payment Date:
              Customer Email:
              Description Duration Price
                $
                Package Price:   $
                Subscription Discount: - $
                Coupon Discount: - $
                Payment Total:   $
                Payment Received:   $
                Step 4
                Due to discounts, you do not have to pay anything. Just complete the checkout to get your free subscription.
                Step 4
                You can buy a voucher in denominations of
                €10
                ,
                €25
                ,
                €50
                ,
                €100
                , and
                €200
                . Your subscription will be recharged proportionally to the voucher's value. The table below shows the estimated subscription time for the
                package.
                VoucherSubscriptionPro Rata
                These are estimated times, the actual number of days might differ during checkout, depending on the current exchange rate and network fees. You will receive an additional
                from the pro-rata discount of your current subscription.
                Step 5
                Take note of the following when purchasing from a retailer:
                • Identity Verification:
                  If you purchase the voucher online, some retailers may require SMS or ID verification, depending on the payment option used, your country, and whether or not you are accessing their website via a VPN or proxy.
                • Voucher Delivery:
                  The retailer will email you the voucher or show the code on their website after checkout. This is a third-party voucher and not an Orion voucher.
                • Voucher Redemption:
                  After receiving the voucher, you have to redeem it into a wallet on CryptoVoucher's website.
                • Wallet:
                  When redeeming the voucher, you will be asked to provide a wallet address. Do not provide your own address and do not create a new wallet. Instead enter our wallet address which will be generated in the next step. You therefore have to redeem the voucher directly into our wallet and not yours.
                Step 6
                Head over to CryptoVoucher and buy a voucher from any of the listed retailers. Note that different retailers offer different payment options and their prices might deviate slightly from each other.
                Step 7
                Head back to CryptoVoucher and redeem the voucher. During the process you will be asked to enter a wallet address. Enter
                our
                address that will be generated in the next step. Do not use your own wallet or create a new wallet during the process.
                Step 8
                In the next step a unique address will be generated for your deposit.

                Please do not continue to the next step if you do not intend to complete the purchaset, since you will unnecessarily waste one of our addresses.
                Step 9
                When you buy the , redeem the voucher or transfer the purchased directly into the wallet address provided below. Do not create your own wallet during the process, but use ours instead. You can send any amount you want. Your subscription will be recharged proportionally to the deposited amount.

                Make sure you enter the wallet address and the correctly, otherwise your payment will not go through and your funds will be lost.
                Payment Amount
                Any Amount
                Payment Address
                Payment
                Payment Qr Code
                Step 10
                Your payment failed for an unknown reason. Please contact us about this problem.
                Your payment was successfully verified. Your account was recharged with the package for .
                Moderate Payment Process
                Reasonable Prices  •  Additional Network & Third-Party Fees
                Step 1
                Purchase a voucher from MyBitCards.
                Step 2
                Select the package of your choice.

                Step 3
                Customer Invoice
                Invoice Number:
                Invoice Date:
                Payment Status:
                Payment Method:
                Payment Date:
                Customer Email:
                Description Duration Price
                  $
                  Package Price:   $
                  Subscription Discount: - $
                  Coupon Discount: - $
                  Payment Total:   $
                  Payment Received:   $
                  Step 4
                  Due to discounts, you do not have to pay anything. Just complete the checkout to get your free subscription.
                  Step 4
                  You can buy a voucher in denominations of
                  $25
                  ,
                  $50
                  , and
                  $100
                  . Your subscription will be recharged proportionally to the voucher's value. The table below shows the estimated subscription time for the
                  package.
                  VoucherSubscriptionPro Rata
                  These are estimated times, the actual number of days might differ during checkout, depending on the current exchange rate and network fees. You will receive an additional
                  from the pro-rata discount of your current subscription.
                  Step 5
                  Take note of the following when purchasing from a retailer:
                  • Identity Verification:
                    If you purchase the voucher online, some retailers may require SMS or ID verification, depending on the payment option used, your country, and whether or not you are accessing their website via a VPN or proxy.
                  • Voucher Delivery:
                    The retailer will email you the voucher or show the code on their website after checkout. This is a third-party voucher and not an Orion voucher.
                  • Voucher Redemption:
                    After receiving the voucher, you have to redeem it into a wallet on MyBitCards' website.
                  • Wallet:
                    When redeeming the voucher, you will be asked to provide a wallet address. Do not provide your own address and do not create a new wallet. Instead enter our wallet address which will be generated in the next step. You therefore have to redeem the voucher directly into our wallet and not yours.
                  Step 6
                  Head over to MyBitCards and buy a voucher from any of the listed retailers. Note that different retailers offer different payment options and their prices might deviate slightly from each other.
                  Step 7
                  Head back to MyBitCards and redeem the voucher. During the process you will be asked to enter a wallet address. Enter
                  our
                  address that will be generated in the next step. Do not use your own wallet or create a new wallet during the process.
                  Step 8
                  In the next step a unique address will be generated for your deposit.

                  Please do not continue to the next step if you do not intend to complete the purchaset, since you will unnecessarily waste one of our addresses.
                  Step 9
                  When you buy the , redeem the voucher or transfer the purchased directly into the wallet address provided below. Do not create your own wallet during the process, but use ours instead. You can send any amount you want. Your subscription will be recharged proportionally to the deposited amount.

                  Make sure you enter the wallet address and the correctly, otherwise your payment will not go through and your funds will be lost.
                  Payment Amount
                  Any Amount
                  Payment Address
                  Payment
                  Payment Qr Code
                  Step 10
                  Your payment failed for an unknown reason. Please contact us about this problem.
                  Your payment was successfully verified. Your account was recharged with the package for .
                  Difficult Payment Process
                  Reasonable Prices  •  Additional Network & Third-Party Fees
                  Step 1
                  Purchase a voucher from an online or local vendor.
                  Step 2
                  Select the package of your choice.

                  Step 3
                  Customer Invoice
                  Invoice Number:
                  Invoice Date:
                  Payment Status:
                  Payment Method:
                  Payment Date:
                  Customer Email:
                  Description Duration Price
                    $
                    Package Price:   $
                    Subscription Discount: - $
                    Coupon Discount: - $
                    Payment Total:   $
                    Payment Received:   $
                    Step 4
                    Due to discounts, you do not have to pay anything. Just complete the checkout to get your free subscription.
                    Step 4
                    Take note of the following when purchasing from a retailer:
                    • Identity Verification:
                      If you purchase the voucher online, some retailers may require SMS or ID verification.
                    • Voucher Delivery:
                      The retailer will email, SMS, or post you the voucher. This is a third-party voucher and not an Orion voucher.
                    • Voucher Redemption:
                      After receiving the voucher, you have to redeem it into a wallet on the retailer's website.
                    • Wallet:
                      When redeeming the voucher, you will be asked to provide a wallet address. Do not provide your own address and do not create a new wallet. Instead enter our wallet address which will be generated in the next step. You therefore have to redeem the voucher directly into our wallet and not yours.
                    Step 5
                    Purchase a voucher from one of the following local retailers.
                    Europe
                    https://bit4coin.net
                    Available Locations:Many countries across Europe
                    Payment Methods:Credit Card, SEPA, iDEAL, Bank Transfer
                    Minimum Amount:€25 (must be entered manually)
                    ID Verification:No
                    Phone Required:Yes (voucher code is send by SMS)
                    Additional Notes:International bank transfer can be made worldwide
                    Europe
                    https://www.bitnovo.com
                    Available Locations:Many countries across Europe
                    Payment Methods:Cash, Credit Card, Flexepin, SEPA, Sofort, Bank Transfer
                    Minimum Amount:€25
                    ID Verification:No
                    Phone Required:No
                    Additional Notes:Purchase online or from any of the locally listed shops
                    Europe
                    https://www.rebiton.com
                    Available Locations:Many countries across Europe
                    Payment Methods:Bank Transfer
                    Minimum Amount:€25
                    ID Verification:No
                    Phone Required:No
                    Additional Notes:Purchase online using wire transfer
                    Austria
                    https://www.bitcoinbon.at
                    Available Locations:Austria
                    Payment Methods:Cash, Credit Card
                    Minimum Amount:€20
                    ID Verification:No
                    Phone Required:No
                    Additional Notes:Purchase from any of the locally listed shops
                    France
                    https://bitit.io
                    Available Locations:France (Paris)
                    Payment Methods:Cash, Credit Card, Neosurf, Cashlib
                    Minimum Amount:€10
                    ID Verification:No
                    Phone Required:No
                    Additional Notes:Neosurf and Cashlib vouchers can be used worldwide
                    United Kingdom
                    https://fastbitcoins.com
                    Available Locations:United Kingdom
                    Payment Methods:Cash, Credit Card
                    Minimum Amount:$10
                    ID Verification:No
                    Phone Required:No
                    Additional Notes:Higher fees and lower limits for unregistered users
                    Canada
                    https://fastbitcoins.com
                    Available Locations:Canada
                    Payment Methods:Cash, Credit Card
                    Minimum Amount:$10
                    ID Verification:No
                    Phone Required:No
                    Additional Notes:Higher fees and lower limits for unregistered users
                    Canada
                    https://bitaccess.ca
                    Available Locations:Canada
                    Payment Methods:Flexepin
                    Minimum Amount:$20
                    ID Verification:No
                    Phone Required:Yes
                    Additional Notes:Purchase using a Flexepin voucher
                    Global
                    https://bitgiftr.com
                    Available Locations:Global
                    Payment Methods:PayPal
                    Minimum Amount:$5
                    ID Verification:No
                    Phone Required:No
                    Additional Notes:Purchase online using PayPal
                    Global
                    https://coinatmradar.com
                    Available Locations:Global
                    Payment Methods:Cash, Credit Card
                    Minimum Amount:$10
                    ID Verification:No
                    Phone Required:No
                    Additional Notes:Purchase from a local Bitcoin ATM
                    Step 6
                    In the next step a unique address will be generated for your deposit.

                    Please do not continue to the next step if you do not intend to complete the purchaset, since you will unnecessarily waste one of our addresses.
                    Step 7
                    When you buy the , redeem the voucher or transfer the purchased directly into the wallet address provided below. Do not create your own wallet during the process, but use ours instead. You can send any amount you want. Your subscription will be recharged proportionally to the deposited amount.

                    Make sure you enter the wallet address and the correctly, otherwise your payment will not go through and your funds will be lost.
                    Payment Amount
                    Any Amount
                    Payment Address
                    Payment
                    Payment Qr Code
                    Step 8
                    Your payment failed for an unknown reason. Please contact us about this problem.
                    Your payment was successfully verified. Your account was recharged with the package for .
                    You can upgrade or downgrade your package at any time. Your current subscription will be added pro-rata to your new subscription.


                    You can upgrade to a higher package at any time by going through the normal checkout process. Direct payments will have a discounted price and you therefore only have to pay the difference. Vouchers purchased from resellers have a fixed price and your current subscription time will be added proportionally to your new subscription.



                    or

                    You can downgrade to a lower package at any time by going through the normal checkout process. If the downgraded package is more expensive than your remaining subscription time, you will only have to pay the difference. If the downgraded package is cheaper, you will not have to pay anything and your current subscription time will be added proportionally to your new subscription.


                    Invoice NumberPackage TypePayment StatusPayment DatePayment GatewayPayment Amount
                    No Previous Payments
                    Premium Referrals
                    Free Referrals
                    Total Rewards

                    Premium Referrals
                    Free Referrals
                    Total Rewards

                    BonusRewardUserTimeTypeSubscription
                    No Referrals
                    If you need more help installing, integrating, or configuring the Orion addon, then download the user guide.
                    PDF Document
                    Orion has a Kodi addon that allows easy integration. The addon only offers low level API access but does not have features for searching, streaming, or downloading. Other addons must therefore provide these features. If your streaming addon of choice does not support Orion yet, try contacting the addon’s developer.

                    You can add Orion's repo as a file source to Kodi and then install the addon through Kodi's file manager. Add the following source:

                    https://repo.orionoid.com

                    The Orion addon should automatically be installed by other addons. If not, you can manually download it here:
                    version 3.5.4
                    version 3.3.0
                    Seren is a Kodi streaming addon. Seren uses external provider packages. You can add the Orion package in Seren's setting using the following link:

                    https://seren.orionoid.com

                    You can also download the Orion provider package manually.
                    version 3.3.3
                    Wako is a mobile app providing scraping facilities and allowing you to interact with Kodi. Generate a custom link that can be added to Wako.

                    Link Limit
                    The maximum number of links to retrieve per scrape.
                    No Sorting
                    Random Shuffle
                    Sort By User Popularity
                    Sort By Update Time
                    Sort By File Size
                    Sort By Torrent Seeds
                    Sort By Video Quality
                    Sort By Audio Channels
                    Sort By Value
                    Sort the links according to a specific attribute.
                    HD8K
                    HD6K
                    HD4K
                    HD2K
                    HD1080
                    HD720
                    SD
                    SCR1080
                    SCR720
                    SCR
                    CAM1080
                    CAM720
                    CAM
                    Minimum Video Quality
                    The minimum video quality of links to retrieve.
                    HD8K
                    HD6K
                    HD4K
                    HD2K
                    HD1080
                    HD720
                    SD
                    SCR1080
                    SCR720
                    SCR
                    CAM1080
                    CAM720
                    CAM
                    Maximum Video Quality
                    The maximum video quality of links to retrieve.
                    Include 3D Videos
                    Exclude 3D Videos
                    3D Video
                    Include or exclude 3D videos.
                    1 Channel (Mono)
                    2 Channels (Stereo)
                    6 Channels (Surround)
                    8 Channels (Surround)
                    10 Channels (Surround)
                    Audio Channels
                    The minimum number of audio channels.
                    Include Common Providers
                    Exclude Common Providers
                    Common Providers
                    Wako only allows you to set a single provider link. If you want additional providers to Orion, you can include Wako's common local scrapers as well.
                    External Providers
                    If Orion and the common providers are not enough, you can include a link that points to additional Wako providers.


                    Copy the link below into the provider settings in the Wako app.
                    Do not share this link with anyone, since it contains your API key.


                    https://wako.orionoid.com

                    You can also download the provider package manually.
                    version 1.0.0
                    Links And Counting
                    Hashes And Counting
                    Containers And Counting
                    A few things have changed in Orion 3. If you are currently using Orion 2, please update your code as soon as possible.
                    • Test Apps: All API keys for testing and demo apps have been revoked. If you previously registered a test app with us and your API key does not work anymore, please use the new open-source API key. Only use this key for personal or testing purposes. If you utilize the API key for public use, please apply for a custom API key.
                    • Container API: There are three new API endpoints for containers. Containers are .torrent or .nzb files. You can retrieve the hash of a container through the API using its source URL. The hash is useful for doing cache lookups on debrid services. You can also download the container directly from Orion, even if you do not have an account for the site the container originates from. Two new daily limits are imposed, a limit on the number of hashes retrieved, and a limit on the number of containers downloaded per day.
                    • Link Parameter: In version 2 links were returned as a nested string attribute in the stream object. You would have accessed the link using item['stream']['link'] in the past. The old parameter will still be available for a few weeks, but please change to the new item['links'] parameter as soon as possible. This has changed in version 3. Links are now directly part of the parent object and are presented as an array. The array contains alternative links ordered according the relevance. If you do not know which link to pick, just pick the first one using item['links'][0]. If a torrent has a magnet link, it will always be the first one in the array. Torrent and usenet links can also contain alternative links. The second link will point to the .torrent or .nzb container on the source website. The third link is the .torrent or .nzb container on Orion's server. Only use the third link if the previous two do not work, since downloading an Orion container will count towards the user's daily container limit.
                    • Addon Integration: The Orion Kodi addon offers a feature to integrate Orion into third-party addons. Orion has to be reintegrated by the user to work with the new API version.
                    Use the open-source test key if you want to quickly test the Orion API without registering a new app. This key is for private and personal use only. Only use the key if you neither plan on utilizing it for a long time, nor for public apps.
                    or
                    Apply for a custom key if you plan on using the API for a long time or for public apps. This key is for your app only. Do not share the key with other users or developers.
                    API or Website
                    Media Center Addon
                    Browser Plugin
                    Standalone Mobile App
                    Standalone Dekstop App
                    Other Program
                    Private (Hidden from the public on our website)
                    Public (Visible to the public on our website)
                    API Overview
                    If you want to use Orion in Kodi, we suggest using our Kodi addon which can easily be integrated with a few lines of code. Otherwise, this section provides more details on how to use our RESTful HTTP API.
                    API Access
                    The API can be accessed in one of the following ways:
                    • HTTPS: Secure access over HTTPS. This is the recommended access method.
                    • HTTP: Unsecure access over HTTP. This access method is not recommended, since it does not use encryption. However, this method may be useful in cases where HTTPS connections are not possible.
                    • TOR: Secure access over the Tor network. Note that access is over HTTP and not HTTPS, since Tor utilizes its own encryption.
                    API Methods
                    The API requests can be made in one of the following ways:
                    • GET Request: Make a GET request by adding the parameters to the URL.
                      GET
                      Request Method:GET
                      Request URL:https://api.orionoid.com/?
                      parameter1
                      =value1&
                      parameter2
                      =value2
                      Request Body:
                      Content Type:
                    • POST Request: Make a POST request by adding the parameters to the body and setting the content type.
                      POST
                      Request Method:POST
                      Request URL:https://api.orionoid.com
                      Request Body:
                      parameter1
                      =value1&
                      parameter2
                      =value2
                      Content Type:application/x-www-form-urlencoded
                    • JSON Request: Make a POST request by adding the parameters as a JSON object to the body and setting the content type. Double named GET/POST parameter names are split up into child objects. For instance, the GET/POST parameter videoquality=hd1080 is represented as {"video" : {"quality" : "hd1080"}} in JSON.
                      JSON
                      Request Method:POST
                      Request URL:https://api.orionoid.com
                      Request Body:{"parameter1" : "value1", "parameter2" : "value2"}
                      Content Type:application/json
                    API Keys
                    Each request requires two API keys:
                    • App Key: Each website, addon, or standalone program that connects to Orion's API requires a unique app key. This key should be hardcoded in your code and will be the same for all your users. If you have not already done so, register your app with Orion to get a new key, it's easy and free. Please do not share API keys between apps. If you develop multiple apps, please use a separate key per app.
                    • User Key: Each Orion user will receive a unique API key. Your app should provide an option that allows users to enter their own user key. Users are not allowed to share their API keys.
                    API Searches
                    Streams can be searched in one of two ways:
                    • Query String: Search for streams using a query string. The movie or show with the highest correlated match is returned. Using this method is not advised, since it might return incorrect results if the search query is not properly formulated. Queries also take a lot longer to execute.
                    • ID and Number: Search for streams using the Orion, IMDb, TMDb, TVDb, TVRage, or Trakt ID. The Trakt slug can also be used. You can use the ID for the movie, show, or individual episode. If you search using a show ID, you also have to provide the season and episode number. Using this method is advised, since it always returns correct results for the given ID, and is a lot faster to execute.
                    API Types
                    The range data type has one of the following formats:
                    • Full Range: An underscore (_) separated range of values with the format X_Y, or mathematically [X,Y]. Values between the lower bound X and the upper bound Y are matched. For example videoquality=sd_hd1080.
                    • Partial Range: A underscore (_) separated range of values with the format format X_ or _Y. Mathematically X_ is [X,∞] and _Y is [-∞,Y]. X_ matches values above the lower bound X with no upper bound, for example videoquality=sd_. _Y matches values below the upper bound Y with no lower bound, for example videoquality=_hd1080.
                    The selection data type has one of the following formats:
                    • Single Value: A single value that is matched, for example videoquality=hd1080.
                    • Value List: A comma (,) separated list of values with the format X,Y,Z. The list can contain any number of values. Values starting with a minus (-) are excluded from the match, for example videocodec=-h265,-h264. List values starting with a plus (+) or no prefix at all are included in the match, for example videocodec=h265,+h264.
                    The list data type has one of the following formats:
                    • JSON Array: When making a JSON request, lists must be passed in as a JSON array, for example {"links" : ["link1", "link2"]}.
                    • URL Array: When making a GET or POST request, lists must be passed in as an URL array, for example links[]=link1&links[]=link2.
                    API Examples
                    This section provides a few examples on how to use the API and parameters.
                    Stream Search
                    Search for a list of stream links. Requests are subject to the user's daily link limit.
                    Parameters
                    NameRequiredTypeOptionsExampleDescription
                    mode
                    Yes
                    Enum
                    stream
                    stream
                    The API mode which should be set to stream for this query.
                    action
                    Yes
                    Enum
                    retrieve
                    retrieve
                    The API action which should be set to retrieve for this query.
                    keyapp
                    Yes
                    String
                    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                    The app API key.
                    keyuser
                    Yes
                    String
                    BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
                    The user API key.
                    type
                    Yes
                    Enum
                    movie / show
                    movie
                    The type of stream to retrieve.
                    query
                    Depends
                    String
                    Avatar 2009
                    The query string to search for. The movie or show with the best match is returned. If no query is provided, an ID should be used instead.
                    idorion
                    Depends
                    String
                    ABC2DEF3GHJ4KLM5NPQ6RST7UVW8XYZ9
                    The Orion ID of the movie, show or episode. Available for all movies and shows. Only one of the IDs should be provided.
                    idimdb
                    Depends
                    String
                    0499549
                    The IMDb ID of the movie, show or episode. Available for all movies and shows. Only one of the IDs should be provided.
                    idtmdb
                    Depends
                    String
                    19995
                    The TMDb ID of the movie. Only available for some movies. Only one of the IDs should be provided.
                    idtvdb
                    Depends
                    String
                    121361
                    The TVDb ID of the show or episode. Only available for some shows. Only one of the IDs should be provided.
                    idtvrage
                    Depends
                    String
                    24493
                    The TVRage ID of the show or episode. Only available for very few shows. Only one of the IDs should be provided.
                    idtrakt
                    Depends
                    String
                    269
                    The Trakt ID of the movie, show or episode. Available for all movies and shows. Only one of the IDs should be provided.
                    idslug
                    Depends
                    String
                    avatar-2009
                    The Trakt slug of the movie, show or episode. Available for all movies and shows. Only one of the IDs should be provided.
                    numberseason
                    Depends
                    Integer
                    [0,∞]
                    5
                    The season number. Only used if a show ID was provided. Not used if a movie or episode ID was provided.
                    numberepisode
                    Depends
                    Integer
                    [0,∞]
                    12
                    The episode number. Only used if a show ID was provided. Not used if a movie or episode ID was provided.
                    limitcount
                    No
                    Integer
                    [0,∞]
                    500
                    The maximum number of streams to return. If not specified, all available links are returned. Make sure to specify a limit, since without one you might use up the entire daily limit with one query.
                    limitretry
                    No
                    Integer
                    [0,∞]
                    100
                    The maximum number of streams to return if the normal search fails. If the filters are too restrictive, no streams are returned. A second search can be conducted without any of the filters and its own link limit. By default this option is disabled.
                    limitoffset
                    No
                    Integer
                    [0,∞]
                    200
                    The links to return according to an offset starting from 0. If the offset is set to X, the first X links are skipped and only the links thereafter are returned. Either a limit offset or page should be provided, but not both.
                    limitpage
                    No
                    Integer
                    [1,∞]
                    2
                    The links to return according to a page offset starting from 1. This works similar to the normal offset. If the count limit is set to X and the page to Y, then an offset of (X * (Y + 1)) is used. Hence, the offset is specified in large pages instead of individual links. Either a limit offset or page should be provided, but not both.
                    timeadded
                    No
                    Integer
                    [0,∞]
                    1514764800
                    The minimum Unix timestamp since the stream was initially added. Only streams that were added after this date are returned. Alternatively, the age in number of days can be used.
                    timeaddedage
                    No
                    Integer
                    [0,∞]
                    100
                    The maximum number of days since the stream was initially added. Only streams that were added within this period are returned. Alternatively, the Unix timestamp can be used.
                    timeupdated
                    No
                    Integer
                    [0,∞]
                    1514764800
                    The minimum Unix timestamp since the stream was last updated. Only streams that were updated after this date are returned. Alternatively, the age in number of days can be used.
                    timeupdatedage
                    No
                    Integer
                    [0,∞]
                    100
                    The maximum number of days since the stream was last updated. Only streams that were updated within this period are returned. Alternatively, the Unix timestamp can be used.
                    sortvalue
                    No
                    Enum
                    shuffle / timeadded / timeupdated / popularity / filesize / streamseeds / streamage / videoquality / audiochannels
                    videoquality
                    The attribute to sort streams by. By default streams are not sorted. The shuffle option randomly mixes the results.
                    sortorder
                    No
                    Enum
                    ascending / descending
                    ascending
                    The order to sort the streams by. By default streams are sorted in descending order.
                    popularitypercent
                    No
                    Float
                    [0,1]
                    0.8
                    The minimum popularity percentage of streams. Popularity is determined by the number of users who access the stream. The percentage is calculated as a relative measurement to the popularity of other streams for the given movie or show.
                    popularitycount
                    No
                    Integer
                    [0,∞]
                    2452
                    The minimum popularity count of streams. Popularity is determined by the number of users who access the stream. The count is an absolute measurement. For a finer or relative measurement, the percentage should be used instead.
                    streamtype
                    No
                    Selection
                    torrent / usenet / hoster
                    torrent,hoster
                    The type of the stream, either from the torrent or usenet network, or from a file hoster.
                    streamsource
                    No
                    Selection
                    thepiratebay,limetorrents
                    The source or website the streams originate from. Names must be alphanumeric without spaces or symbols.
                    streamhoster
                    No
                    Selection
                    openload, rapidgator
                    The server or website the file is hosted on. Names must be alphanumeric without spaces or symbols.
                    streamseeds
                    No
                    Integer
                    [0,∞]
                    50
                    The minimum number of seeds for torrents.
                    streamage
                    No
                    Integer
                    [0,∞]
                    365
                    The maximum number of days since the NZB was uploaded to the usenet.
                    protocoltorrent
                    No
                    Selection
                    magnet / http / https / ftp / ftps
                    magnet,https
                    The protocol of the torrent links.
                    protocolusenet
                    No
                    Selection
                    http / https / ftp / ftps
                    http,https
                    The protocol of the usenet links.
                    protocolhoster
                    No
                    Selection
                    http / https / ftp / ftps
                    http,https
                    The protocol of the hoster links.
                    access
                    No
                    Selection
                    direct / indirect / premiumize / premiumizetorrent / premiumizeusenet / premiumizehoster / offcloud / offcloudtorrent / offcloudusenet / offcloudhoster / realdebrid / realdebridtorrent / realdebridusenet / realdebridhoster
                    direct,premiumize
                    The access status of the stream. Only streams that are cached with a debrid service, direct hoster links that do not require an account, or indirect hoster links that require an account or URL resolve, are returned. The cached access status can be checked for all or specific stream types, namely torrents, usenet, and hosters.
                    filename
                    No
                    Selection
                    true / false / list
                    deadpool,pool
                    The file name of the stream. If set to true, only streams with a file name will be retrieved. If set to false, only streams without a file name will be retrieved. Alternatively, a comma-separated list of keywords requires the file name to contain all the keywords. Do not add this parameter in order to return all streams, irrespective of having a file name or not.
                    filesize
                    No
                    Range
                    [0,∞]
                    536870912_1073741824
                    The file size range in bytes.
                    fileunknown
                    No
                    Bool
                    true / false
                    true
                    Whether or not to include streams with an unknown file size.
                    filepack
                    No
                    Bool
                    true / false
                    true
                    Whether or not to return episodes that are part of a season pack. By default all episodes are returned, irrespective of season packs.
                    metarelease
                    No
                    Selection
                    bdrip / bdrmx / bdscr / bluray / cam / ddc / dvd / dvdrip / dvdrmx / dvdscr / hdts / hdrip / hdtv / pdvd / ppv / r5 / scr / tk / ts / tvrip / vcd / vhs / vhsrip / webcap / webdl / webrip / wp
                    bluray,bdrip
                    The release type of the streams. By default all releases are included.
                    metauploader
                    No
                    Selection
                    publichd,sparks
                    The uploader of the streams. By default all uploaders are included.
                    metaedition
                    No
                    Selection
                    extended / collector / director / commentary / making / special
                    extended
                    The edition of the stream. The video can be an extended edition, collector's edition, director's cut, commentary voiceover, making of, or special edition. By default all editions are included.
                    videoquality
                    No
                    Range
                    cam / cam720 / cam1080 / scr / scr720 / scr1080 / sd / hd720 / hd1080 / hd2k / hd4k / hd6k / hd8k
                    sd_hd1080
                    The video quality of the stream.
                    videocodec
                    No
                    Selection
                    h266 / h265 / h264 / h262 / h222 / 3gp / avi / divx / flv / mkv / mov / mpeg / wmv / xvid
                    h265,mkv
                    The video codec or container of the stream.
                    video3d
                    No
                    Bool
                    true / false
                    false
                    Whether or not the stream is in 3D or not. By default all streams are returned, irrespective of 3D features.
                    audiotype
                    No
                    Selection
                    standard / dubbed
                    -dubbed
                    The audio type as a standard or dubbed recording.
                    audiochannels
                    No
                    Range
                    1 / 2 / 6 / 8
                    2_6
                    The number of audio channels. Mono is 1 and stereo is 2. 5.1 and 7.1 surround sounds systems have 6 and 8 channels respectively.
                    audiosystem
                    No
                    Selection
                    dd / dts / dig / mpeg / xiph / win / app
                    dd,dts
                    The audio system of the stream.
                    audiocodec
                    No
                    Selection
                    amsthd / amspls / ams / thd / pls / lve / sex / ex / ac3 / ac4 / 70 / 9624 / es / neo6 / neox / neopc / neo / hdhra / hdma / hd / nx / hx / ss / con / ina / pyf / x / dra / aac / mp3 / mp2 / flac / ogg / wma / alac / pcm
                    hdhra,hdma,hd
                    The audio codec of the stream.
                    audiolanguages
                    No
                    Selection
                    ab / aa / af / ak / sq / am / ar / an / hy / as / av / ae / ay / az / bm / ba / eu / be / bn / bh / bi / nb / bs / br / bg / my / ca / ch / ce / ny / zh / cv / kw / co / cr / hr / cs / da / dv / nl / dz / en / eo / et / ee / fo / fj / fi / fr / ff / gd / gl / lg / ka / de / el / gn / gu / ht / ha / he / hz / hi / ho / hu / is / io / ig / id / ia / ie / iu / ik / ga / it / ja / jv / kl / kn / kr / ks / kk / km / ki / rw / rn / kv / kg / ko / ku / kj / ky / lo / la / lv / li / ln / lt / lu / lb / mk / mg / ms / ml / mt / gv / mi / mr / mh / mn / na / nv / ng / ne / nd / se / no / ii / nn / oc / oj / or / om / os / pi / ps / fa / pl / pt / pa / qu / ro / rm / ru / sm / sg / sa / sc / sr / sn / sd / si / cu / sk / sl / so / nr / st / es / su / sw / ss / sv / tl / ty / tg / ta / tt / te / th / bo / ti / to / ts / tn / tr / tk / tw / uk / ur / ug / uz / ve / vi / vo / wa / cy / fy / wo / xh / yi / yo / za / zu
                    en,fr
                    The audio language of the streams. Languages use the ISO 639-1 two-letter codes.
                    subtitletype
                    No
                    Selection
                    soft / hard
                    soft
                    The subtitles of the streams, either soft or hard coded. By default all subtitles and non-subtitle streams are returned.
                    subtitlelanguages
                    No
                    Selection
                    ab / aa / af / ak / sq / am / ar / an / hy / as / av / ae / ay / az / bm / ba / eu / be / bn / bh / bi / nb / bs / br / bg / my / ca / ch / ce / ny / zh / cv / kw / co / cr / hr / cs / da / dv / nl / dz / en / eo / et / ee / fo / fj / fi / fr / ff / gd / gl / lg / ka / de / el / gn / gu / ht / ha / he / hz / hi / ho / hu / is / io / ig / id / ia / ie / iu / ik / ga / it / ja / jv / kl / kn / kr / ks / kk / km / ki / rw / rn / kv / kg / ko / ku / kj / ky / lo / la / lv / li / ln / lt / lu / lb / mk / mg / ms / ml / mt / gv / mi / mr / mh / mn / na / nv / ng / ne / nd / se / no / ii / nn / oc / oj / or / om / os / pi / ps / fa / pl / pt / pa / qu / ro / rm / ru / sm / sg / sa / sc / sr / sn / sd / si / cu / sk / sl / so / nr / st / es / su / sw / ss / sv / tl / ty / tg / ta / tt / te / th / bo / ti / to / ts / tn / tr / tk / tw / uk / ur / ug / uz / ve / vi / vo / wa / cy / fy / wo / xh / yi / yo / za / zu
                    en,fr
                    The subtitle language of the streams. Languages use the ISO 639-1 two-letter codes.
                    Request
                    API
                    URL:https://api.orionoid.com
                    Body:
                    keyuser
                    =AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA&
                    keyapp
                    =BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB&
                    mode
                    =stream&
                    action
                    =retrieve&
                    type
                    =movie&
                    idimdb
                    =0063350
                    Response
                    {"name":"Orion API","version":"3.0.0","result":{"status":"success","type":"streamretrieve","description":"Streams Retrieved","message":"The streams were found."},"data":{"type":"movie","movie":{"id":{"orion":"LFQW7TNQMCGPLPT89KGPPDMGPDJJTAJJ","imdb":"0063350","tmdb":"10331"},"time":{"added":1529483160,"updated":1531215897},"meta":{"title":"Night of the Living Dead","year":1968},"popularity":{"count":4,"percent":0.05719}},"count":{"total":117,"requested":0,"retrieved":117},"streams":[{"id":"A8CPEBRPHL99HB9FJBAD8EUG9EMJ7PE6","time":{"added":1529483160,"updated":1530521619},"links":["magnet:?xt=urn:btih:b8602f98bf58d1ddcd413ef40ead4aa4853f4b7c","https://thepiratebay.org/torrent/4561223.torrent","https://orionoid.com/container/A8CPEBRPHL99HB9FJBAD8EUG9EMJ7PE6"],"stream":{"type":"torrent","source":"thepiratebay","hoster":null,"seeds":7,"time":0},"access":{"direct":false,"premiumize":true,"offcloud":false,"realdebrid":false},"file":{"hash":"b8602f98bf58d1ddcd413ef40ead4aa4853f4b7c","name":"Night.Of.The.Living.Dead.1968.720p.BluRay.x264-CtrlHD [PublicHD]","size":4692251770,"pack":false},"meta":{"release":"bluray","uploader":"publichd","edition":null},"video":{"quality":"hd720","codec":"h264","3d":false},"audio":{"type":"standard","channels":2,"system":"dd","codec":"ac3","languages":["en"]},"subtitle":{"type":null,"languages":[]},"popularity":{"count":1,"percent":0.74159}}],"requests":{"total":121,"daily":{"limit":5000,"used":121,"remaining":4879}}}}
                    Container Details
                    Search for a list of torrent and nzb container details. Requests are subject to the user's daily hash limit.
                    Parameters
                    NameRequiredTypeOptionsExampleDescription
                    mode
                    Yes
                    Enum
                    container
                    container
                    The API mode which should be set to container for this query.
                    action
                    Yes
                    Enum
                    retrieve
                    retrieve
                    The API action which should be set to retrieve for this query.
                    keyapp
                    Yes
                    String
                    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                    The app API key.
                    keyuser
                    Yes
                    String
                    BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
                    The user API key.
                    links
                    Yes
                    List
                    ["https://www2.yggtorrent.ch/engine/ download_torrent?id=459370", "https://abnzb.com/api?t=get& id=716b6d95f2c61b1c57edbace625ac739"]
                    A list of links to retrieve details for. Currently only links pointing to torrent and usenet containers are supported. Links submitted as GET or POST parameters must be URL-encoded. Links submitted as JSON parameters do not have to be URL-encoded.
                    Request
                    API
                    URL:https://api.orionoid.com
                    Body:
                    keyuser
                    =AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA&
                    keyapp
                    =BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB&
                    mode
                    =container&
                    action
                    =retrieve&
                    links[]
                    =https%3A%2F%2Fwww2.yggtorrent.ch%2Fengine%2Fdownload_torrent%3Fid%3D459370&
                    links[]
                    =https%3A%2F%2Fabnzb.com%2Fapi%3Ft%3Dget%26id%3Dfaf1de51f8a3762b7c3f893becdcceb6
                    Response
                    {"name":"Orion API","version":"3.0.0","result":{"status":"success"},"data":{"containers":[{"id":"67CLFH58MVGFKHLJ6JBEMQV9GPJS7GE8","type":"torrent","time":null,"hash":"db4586385cd95941cd41199f11e5067c39108ed6","link":{"orion":null,"source":"https://www2.yggtorrent.ch/engine/download_torrent?id=459370","magnet":null}},{"id":"5JLQC8HMBK8DGJP94TTNTFNN7KDBKAKM","type":"usenet","time":null,"hash":"34ad6d53b9742cb47f76f47340ef5484242e936d","link":{"orion":"https://orionoid.com/container/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/5JLQC8HMBK8DGJP94TTNTFNN7KDBKAKM","source":"https://abnzb.com/api?t=get&id=faf1de51f8a3762b7c3f893becdcceb6"},"segment":{"first":"l7WiM0kYQz-CAdePab_FlXi0A1-A@u09aA2WeV.wtn","largest":"5JVmZeucB0aZhdaVAs2sp@n-ota.ImI","list":["l7WiM0kYQz-CAdePab_FlXi0A1-A@u09aA2WeV.wtn","5JVmZeucB0aZhdaVAs2sp@n-ota.ImI","T4IvlYiqL1d-qRBRN43KS@1mB7E.CyE","n4_J150R4IYdO4lmSqUTiNFWjB-@od3GbD5v._ZN","oZjuqGJsT_HMn_4E8QDDvH@iQIjvc.Po3"]}}],"count":{"requested":2,"retrieved":2},"requests":{"total":2563,"daily":{"limit":10000,"used":6852,"remaining":3148}}}}
                    Container Identifiers
                    Search for a list of SHA1 hashes and segment IDs of torrent and nzb containers. This function is a combination of the container hash and segment functions. More details can be found under the hash and segment sections. Requests are subject to the user's daily hash limit.
                    Parameters
                    NameRequiredTypeOptionsExampleDescription
                    mode
                    Yes
                    Enum
                    container
                    container
                    The API mode which should be set to container for this query.
                    action
                    Yes
                    Enum
                    identifier
                    identifier
                    The API action which should be set to identifier for this query.
                    keyapp
                    Yes
                    String
                    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                    The app API key.
                    keyuser
                    Yes
                    String
                    BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
                    The user API key.
                    links
                    Yes
                    List
                    ["https://abnzb.com/api?t=get& id=716b6d95f2c61b1c57edbace625ac739"]
                    A list of links to retrieve identifiers for. Currently only links pointing to torrent and usenet containers are supported. Links submitted as GET or POST parameters must be URL-encoded. Links submitted as JSON parameters do not have to be URL-encoded.
                    Request
                    API
                    URL:https://api.orionoid.com
                    Body:
                    keyuser
                    =AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA&
                    keyapp
                    =BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB&
                    mode
                    =container&
                    action
                    =identifier&
                    links[]
                    =https%3A%2F%2Fwww2.yggtorrent.ch%2Fengine%2Fdownload_torrent%3Fid%3D459370&
                    links[]
                    =https%3A%2F%2Fabnzb.com%2Fapi%3Ft%3Dget%26id%3Dfaf1de51f8a3762b7c3f893becdcceb6
                    Response
                    {"name":"Orion API","version":"3.0.0","result":{"status":"success"},"data":{"identifiers":{"https://www2.yggtorrent.ch/engine/download_torrent?id=459370":{"hash":"db4586385cd95941cd41199f11e5067c39108ed6"},"https://abnzb.com/api?t=get&id=faf1de51f8a3762b7c3f893becdcceb6":{"hash":"34ad6d53b9742cb47f76f47340ef5484242e936d","segment":{"first":"l7WiM0kYQz-CAdePab_FlXi0A1-A@u09aA2WeV.wtn","largest":"5JVmZeucB0aZhdaVAs2sp@n-ota.ImI","list":["l7WiM0kYQz-CAdePab_FlXi0A1-A@u09aA2WeV.wtn","T4IvlYiqL1d-qRBRN43KS@1mB7E.CyE","n4_J150R4IYdO4lmSqUTiNFWjB-@od3GbD5v._ZN","oZjuqGJsT_HMn_4E8QDDvH@iQIjvc.Po3"]}}},"count":{"requested":2,"retrieved":2},"requests":{"total":2563,"daily":{"limit":10000,"used":6852,"remaining":3148}}}}
                    Container Hashes
                    Search for a list of torrent and nzb container SHA1 hashes. Requests are subject to the user's daily hash limit.
                    Parameters
                    NameRequiredTypeOptionsExampleDescription
                    mode
                    Yes
                    Enum
                    container
                    container
                    The API mode which should be set to container for this query.
                    action
                    Yes
                    Enum
                    hash
                    hash
                    The API action which should be set to hash for this query.
                    keyapp
                    Yes
                    String
                    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                    The app API key.
                    keyuser
                    Yes
                    String
                    BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
                    The user API key.
                    links
                    Yes
                    List
                    ["https://www2.yggtorrent.ch/engine/ download_torrent?id=459370", "https://abnzb.com/api?t=get& id=716b6d95f2c61b1c57edbace625ac739"]
                    A list of links to retrieve hashes for. Currently only links pointing to torrent and usenet containers are supported. Links submitted as GET or POST parameters must be URL-encoded. Links submitted as JSON parameters do not have to be URL-encoded.
                    Request
                    API
                    URL:https://api.orionoid.com
                    Body:
                    keyuser
                    =AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA&
                    keyapp
                    =BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB&
                    mode
                    =container&
                    action
                    =hash&
                    links[]
                    =https%3A%2F%2Fwww2.yggtorrent.ch%2Fengine%2Fdownload_torrent%3Fid%3D459370&
                    links[]
                    =https%3A%2F%2Fabnzb.com%2Fapi%3Ft%3Dget%26id%3Dfaf1de51f8a3762b7c3f893becdcceb6
                    Response
                    {"name":"Orion API","version":"3.0.0","result":{"status":"success"},"data":{"hashes":{"https://www2.yggtorrent.ch/engine/download_torrent?id=459370":"db4586385cd95941cd41199f11e5067c39108ed6"},"count":{"requested":2,"retrieved":1},"requests":{"total":2563,"daily":{"limit":10000,"used":6852,"remaining":3148}}}}
                    Container Segments
                    Search for a list of segment IDs of nzb containers. All identifiers are the first message ID of the <segments> section. A list of first message IDs from all <segments>, the first <segments>, and the largest <segments> is returned. To retrieve any other message IDs, download the entire container. Requests are subject to the user's daily hash limit.
                    Parameters
                    NameRequiredTypeOptionsExampleDescription
                    mode
                    Yes
                    Enum
                    container
                    container
                    The API mode which should be set to container for this query.
                    action
                    Yes
                    Enum
                    segment
                    segment
                    The API action which should be set to segment for this query.
                    keyapp
                    Yes
                    String
                    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                    The app API key.
                    keyuser
                    Yes
                    String
                    BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
                    The user API key.
                    links
                    Yes
                    List
                    ["https://abnzb.com/api?t=get& id=716b6d95f2c61b1c57edbace625ac739"]
                    A list of links to retrieve segments for. Currently only links pointing to usenet containers are supported. Links submitted as GET or POST parameters must be URL-encoded. Links submitted as JSON parameters do not have to be URL-encoded.
                    Request
                    API
                    URL:https://api.orionoid.com
                    Body:
                    keyuser
                    =AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA&
                    keyapp
                    =BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB&
                    mode
                    =container&
                    action
                    =segment&
                    links[]
                    =https%3A%2F%2Fabnzb.com%2Fapi%3Ft%3Dget%26id%3Dfaf1de51f8a3762b7c3f893becdcceb6
                    Response
                    {"name":"Orion API","version":"3.0.0","result":{"status":"success"},"data":{"segments":{"https://abnzb.com/api?t=get&id=faf1de51f8a3762b7c3f893becdcceb6":{"first":"l7WiM0kYQz-CAdePab_FlXi0A1-A@u09aA2WeV.wtn","largest":"5JVmZeucB0aZhdaVAs2sp@n-ota.ImI","list":["l7WiM0kYQz-CAdePab_FlXi0A1-A@u09aA2WeV.wtn","T4IvlYiqL1d-qRBRN43KS@1mB7E.CyE","n4_J150R4IYdO4lmSqUTiNFWjB-@od3GbD5v._ZN","oZjuqGJsT_HMn_4E8QDDvH@iQIjvc.Po3"]}},"count":{"requested":2,"retrieved":2},"requests":{"total":2563,"daily":{"limit":10000,"used":6852,"remaining":3148}}}}
                    Container Download
                    Download a torrent or nzb container file. Requests are subject to the user's daily container limit.
                    Parameters
                    NameRequiredTypeOptionsExampleDescription
                    mode
                    Yes
                    Enum
                    container
                    container
                    The API mode which should be set to container for this query.
                    action
                    Yes
                    Enum
                    download
                    download
                    The API action which should be set to download for this query.
                    keyapp
                    Yes
                    String
                    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                    The app API key.
                    keyuser
                    Yes
                    String
                    BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
                    The user API key.
                    id
                    Yes
                    String
                    https://abnzb.com/api?t=get& id=faf1de51f8a3762b7c3f893becdcceb6
                    An ID, SHA1 hash, or source link of the container. Links submitted as GET or POST parameters must be URL-encoded. Links submitted as JSON parameters do not have to be URL-encoded.
                    Request
                    API
                    URL:https://api.orionoid.com
                    Body:
                    keyuser
                    =AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA&
                    keyapp
                    =BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB&
                    mode
                    =container&
                    action
                    =download&
                    id
                    =https%3A%2F%2Fabnzb.com%2Fapi%3Ft%3Dget%26id%3Dfaf1de51f8a3762b7c3f893becdcceb6
                    Response
                    The request returns the binary data of the container file on success. On failure, such as the container not exisiting, or the daily limit being reached, a standard JSON response with the error will be returned. Check the response's content type to determine the success or failure of the download.
                    App Details
                    Retrieve your app details.
                    Parameters
                    NameRequiredTypeOptionsExampleDescription
                    mode
                    Yes
                    Enum
                    app
                    app
                    The API mode which should be set to app for this query.
                    action
                    Yes
                    Enum
                    retrieve
                    retrieve
                    The API action which should be set to retrieve for this query.
                    keyapp
                    Yes
                    String
                    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                    The app API key.
                    keyuser
                    Yes
                    String
                    BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
                    The user API key.
                    Request
                    API
                    URL:https://api.orionoid.com
                    Body:
                    keyuser
                    =AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA&
                    keyapp
                    =BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB&
                    mode
                    =app&
                    action
                    =retrieve
                    Response
                    {"name":"Orion API","version":"3.0.0","result":{"status":"success"},"data":{"id":"BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB","type":"addon","status":"active","name":"MyAddon","description":"My Kodi Addon","link":"https://myaddon.kodi","logo":"https://orionoid.com/logo/BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB","time":{"added":1528820858,"updated":1528820858},"popularity":{"count":41,"percent":0.9323}}}
                    User Details
                    Retrieve the user's account details.
                    Parameters
                    NameRequiredTypeOptionsExampleDescription
                    mode
                    Yes
                    Enum
                    user
                    user
                    The API mode which should be set to user for this query.
                    action
                    Yes
                    Enum
                    retrieve
                    retrieve
                    The API action which should be set to retrieve for this query.
                    keyapp
                    Yes
                    String
                    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                    The app API key.
                    keyuser
                    Yes
                    String
                    BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
                    The user API key.
                    Request
                    API
                    URL:https://api.orionoid.com
                    Body:
                    keyuser
                    =AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA&
                    keyapp
                    =BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB&
                    mode
                    =user&
                    action
                    =retrieve
                    Response
                    {"name":"Orion API","version":"3.0.0","result":{"status":"success"},"data":{"id":"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC","key":"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","email":"example@gmail.com","type":"admin","status":"active","time":{"added":1530820716,"updated":1530820716},"subscription":{"package":{"id":"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD","type":"free","enabled":true,"internal":true,"popular":false,"name":"Free","description":"For The Free Viewer","limit":{"duration":null,"streams":50,"hashes":250},"gateway":{"id":"coupon","name":"Coupon","description":"Redeem A Coupon","reseller":false},"price":0},"time":{"started":1530820716,"expiration":1538769516}},"requests":{"count":59,"streams":{"total":4,"daily":{"limit":50,"used":34,"remaining":16}},"hashes":{"total":563,"daily":{"limit":250,"used":127,"remaining":123}},"containers":{"total":12,"daily":{"limit":5,"used":2,"remaining":3}}}}}
                    Server Details
                    Retrieve the server stats and details.
                    Parameters
                    NameRequiredTypeOptionsExampleDescription
                    mode
                    Yes
                    Enum
                    server
                    server
                    The API mode which should be set to server for this query.
                    action
                    Yes
                    Enum
                    retrieve
                    retrieve
                    The API action which should be set to retrieve for this query.
                    keyapp
                    Yes
                    String
                    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                    The app API key.
                    keyuser
                    Yes
                    String
                    BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
                    The user API key.
                    Request
                    API
                    URL:https://api.orionoid.com
                    Body:
                    keyuser
                    =AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA&
                    keyapp
                    =BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB&
                    mode
                    =server&
                    action
                    =retrieve
                    Response
                    {"name":"Orion API","version":"3.0.0","result":{"status":"success"},"data":{"time":1531554064,"status":"operational","message":"The server is up and fully operational.","stats":{"time":1530551700,"usage":0.22741,"count":{"streams":8850263,"hashes":2154263,"containers":569863,"movies":16676,"shows":5015,"episodes":45152,"users":1,"requests":0,"results":0}}}}
                    Kodi Overview
                    You can easily integrate Orion in your Kodi addon with two lines of code. Just download the Orion addon, add it as a dependency to your addon, and use the object-oriented interface. We recommend installing the Orion Kodi repository to always get the latest updates and bug fixes.
                    version 3.5.4
                    version 3.3.0
                    We have also created a test addon which you can use as an example on how to integrate Orion. The addon.py script also contains a number of examples on how to use the interface.
                    version 3.3.0
                    Kodi Usage
                    First add the following dependency to your addon.xml file:
                    XML
                    <import addon="script.module.orion" version="3.0.0" />
                    Then import the module, create an instance using your app API key, and call the desired function.
                    PY
                    # Import the module
                    from orion import *
                    
                    # Create instance with app API key
                    orion = Orion('Your App API Key')
                    
                    # Search from streams using an ID
                    results = orion.streams(type = Orion.TypeMovie, idXYZ = 'Orion, IMDb, TMDb, TVDb, TVRage, or Trakt ID or slug')
                    Note that you should not name your own script orion.py or your class Orion, since this will clash with the import statement.

                    The full object-oriented interface for the Orion addon, including functions and enums, can be found in lib/orion/__init__.py.
                    Kodi Parameters
                    When searching for streams, the type is required. In addition, you have to specify a query string, or one of the IDs. Show searches also require a season and episode number. The remainder of the parameters are filters, which can be set to one of these values:
                    • No Filters (Orion.FilterNone): Disable the filter and return the unfiltered result.
                    • User Filter (Orion.FilterSettings): Use the options that the user specified in the Orion addon settings. This method is recommended and is also the default value for the parameters below.
                    • Custom Filter: Set a custom value using an enum, boolean, integer, float, string, or list. Range parameters should be specified as a two-value list, the the first and second value being the minimum and maximum respectively. The predefined enums are discussed in the next section.
                    Each search requires a type:
                    • Type: The type of streams, either a Orion.TypeMovie or a Orion.TypeShow, to search for.
                    In addition, one of the following set of parameters are required:
                    • Query String: Search for streams using a query string. The movie or show with the highest correlated match is returned. Using this method is not advised, since it might return incorrect results if the search query is not properly formulated.
                    • ID and Number: Search for streams using the Orion, IMDb, TMDb, or TVDb, TVRage, or Trakt ID. Alternatively, the Trakt slug can be used. Shows require an additional season and episode number. Using this method is advised, since it always returns exact results for the given ID.
                    The streams function takes the following parameters. By default the filter parameters are set to Orion.FilterSettings, which will use the options set by the user in the Orion addon settings. More details on the parameters, their range and possible values can be found under the normal API docs.
                    • type: The type of stream to retrieve.
                    • query: The query string to search for. The movie or show with the best match is returned. If no query is provided, an ID should be used instead.
                    • idOrion: The Orion ID of the movie, show or episode. Available for all movies and shows. Only one of the IDs should be provided.
                    • idImdb: The IMDb ID of the movie, show or episode. Available for all movies and shows. Only one of the IDs should be provided.
                    • idTmdb: The TMDb ID of the movie. Only available for some movies. Only one of the IDs should be provided.
                    • idTvdb: The TVDb ID of the show or episode. Only available for some shows. Only one of the IDs should be provided.
                    • idTvrage: The TVRage ID of the show or episode. Only available for very few shows. Only one of the IDs should be provided.
                    • idTrakt: The Trakt ID of the movie, show or episode. Available for all movies and shows. Only one of the IDs should be provided.
                    • idSlug: The Trakt slug of the movie, show or episode. Available for all movies and shows. Only one of the IDs should be provided.
                    • numberSeason: The season number. Only used if a show ID was provided. Not used if a movie or episode ID was provided.
                    • numberEpisode: The episode number. Only used if a show ID was provided. Not used if a movie or episode ID was provided.
                    • limitCount: The maximum number of streams to return. If not specified, all available links are returned. Make sure to specify a limit, since without one you might use up the entire daily limit with one query.
                    • limitRetry: The maximum number of streams to return if the normal search fails. If the filters are too restrictive, no streams are returned. A second search can be conducted without any of the filters and its own link limit. By default this option is disabled.
                    • limitOffset: The links to return according to an offset starting from 0. If the offset is set to X, the first X links are skipped and only the links thereafter are returned. Either a limit offset or page should be provided, but not both.
                    • limitPage: The links to return according to a page offset starting from 1. This works similar to the normal offset. If the count limit is set to X and the page to Y, then an offset of (X * (Y + 1)) is used. Hence, the offset is specified in large pages instead of individual links. Either a limit offset or page should be provided, but not both.
                    • timeAdded: The minimum Unix timestamp since the stream was initially added. Only streams that were added after this date are returned. Alternatively, the age in number of days can be used.
                    • timeAddedAge: The maximum number of days since the stream was initially added. Only streams that were added within this period are returned. Alternatively, the Unix timestamp can be used.
                    • timeUpdated: The minimum Unix timestamp since the stream was last updated. Only streams that were updated after this date are returned. Alternatively, the age in number of days can be used.
                    • timeUpdatedAge: The maximum number of days since the stream was last updated. Only streams that were updated within this period are returned. Alternatively, the Unix timestamp can be used.
                    • sortValue: The attribute to sort streams by. By default streams are not sorted. The shuffle option randomly mixes the results.
                    • sortOrder: The order to sort the streams by. By default streams are sorted in descending order.
                    • popularityPercent: The minimum popularity percentage of streams. Popularity is determined by the number of users who access the stream. The percentage is calculated as a relative measurement to the popularity of other streams for the given movie or show.
                    • popularityCount: The minimum popularity count of streams. Popularity is determined by the number of users who access the stream. The count is an absolute measurement. For a finer or relative measurement, the percentage should be used instead.
                    • streamType: The type of the stream, either from the torrent or usenet network, or from a file hoster.
                    • streamSource: The source or website the streams originate from. Names must be alphanumeric without spaces or symbols.
                    • streamHoster: The server or website the file is hosted on. Names must be alphanumeric without spaces or symbols.
                    • streamSeeds: The minimum number of seeds for torrents.
                    • streamAge: The maximum number of days since the NZB was uploaded to the usenet.
                    • protocolTorrent: The protocol of the torrent links.
                    • protocolUsenet: The protocol of the usenet links.
                    • protocolHoster: The protocol of the hoster links.
                    • access: The access status of the stream. Only streams that are cached with a debrid service, direct hoster links that can be accessed without an account, or indirect hoster links that require an account or URL resolver, are returned. The cached access status can be checked for all or specific stream types, namely torrents, usenet, and hosters.
                    • filePack: Whether or not to return episodes that are part of a season pack. By default all episodes are returned, irrespective of season packs.
                    • fileName: The file name of the stream. If set to true, only streams with a file name will be retrieved. If set to false, only streams without a file name will be retrieved. Alternatively, a comma-separated list of keywords requires the file name to contain all the keywords
                    • fileSize: The file size range in bytes.
                    • fileUnknown: Whether or not to include streams with an unknown file size.
                    • metaRelease: The release type of the streams. By default all releases are included.
                    • metaUploader: The uploader of the streams. By default all uploaders are included.
                    • metaEdition: The edition of the stream. The video can be an extended edition, collector's edition, director's cut, commentary voiceover, making of, or special edition. By default all editions are included.
                    • videoQuality: The video quality of the stream.
                    • videoCodec: The video codec or container of the stream.
                    • video3D: Whether or not the stream is in 3D or not. By default all streams are returned, irrespective of 3D features.
                    • audioType: The audio type as a standard or dubbed recording.
                    • audioChannels: The number of audio channels. Mono is 1 and stereo is 2. 5.1 and 7.1 surround sounds systems have 6 and 8 channels respectively.
                    • audioSystem: The audio system of the stream.
                    • audioCodec: The audio codec of the stream.
                    • audioLanguages: The audio language of the streams. Languages use the ISO 639-1 two-letter codes.
                    • subtitleType: The subtitles of the streams, either soft or hard coded. By default all subtitles and non-subtitle streams are returned.
                    • subtitleLanguages: The subtitle language of the streams. Languages use the ISO 639-1 two-letter codes.
                    Kodi Enums
                    There are a number of enumerations defined in the Orion class. You can use these class variables in an object-oriented manner (Orion.XYZ) or using the corresponding string or integer value.
                    Item Type
                    The type of the item to search for.
                    PY
                    TypeMovie  =  'movie'  # Movie streams
                    TypeShow   =  'show'   # Epsiode streams
                    Stream Protocol
                    The stream link protocol.
                    PY
                    ProtocolMagnet  = 'magnet'  # Torrent magnet links
                    ProtocolHttp    = 'http'    # Torrent, usenet, and hoster HTTP links
                    ProtocolHttps   = 'https'   # Torrent, usenet, and hoster HTTPS links
                    ProtocolFtp     = 'ftp'      # Torrent, usenet, and hoster FTP links
                    ProtocolFtps    = 'ftps'	  # Torrent, usenet, and hoster FTPS links
                    Stream Access
                    The stream access status on hosters and debrid services.
                    PY
                    AccessDirect            =  'direct'             # Direct hoster link
                    AccessIndirect          =  'indirect'           # Indirect hoster link
                    AccessPremiumize        =  'premiumize'         # Cached any on Premiumize
                    AccessPremiumizeTorrent =  'premiumizetorrent'  # Cached torrent on Premiumize
                    AccessPremiumizeUsenet  =  'premiumizeusenet'   # Cached usenet on Premiumize
                    AccessPremiumizeHoster  =  'premiumizehoster'   # Cached hoster on Premiumize
                    AccessOffcloud          =  'offcloud'           # Cached any on OffCloud
                    AccessOffcloudTorrent   =  'offcloudtorrent'    # Cached torrent on OffCloud
                    AccessOffcloudUsenet    =  'offcloudusenet'     # Cached usenet on OffCloud
                    AccessOffcloudHoster    =  'offcloudhoster'     # Cached hoster on OffCloud
                    AccessRealdebrid        =  'realdebrid'         # Cached any on RealDebrid
                    AccessRealdebridTorrent =  'realdebridtorrent'  # Cached torrent on RealDebrid
                    AccessRealdebridUsenet  =  'realdebridusenet'   # Cached usenet on RealDebrid
                    AccessRealdebridHoster  =  'realdebridhoster'   # Cached hoster on RealDebrid
                    Stream Type
                    The type of the stream.
                    PY
                    StreamTorrent  =  'torrent'  # Torrent magnet or link
                    StreamUsenet   =  'usenet'   # Usenet NZB link
                    StreamHoster   =  'hoster'   # File hoster link
                    Video Quality
                    The video quality of the stream.
                    PY
                    QualityHd8k     =  'hd8k'     # High Definition 8k
                    QualityHd6k     =  'hd6k'     # High Definition 6k
                    QualityHd4k     =  'hd4k'     # High Definition 4k
                    QualityHd2k     =  'hd2k'     # High Definition 2k
                    QualityHd1080   =  'hd1080'   # High Definition 1080p
                    QualityHd720    =  'hd720'    # High Definition 720p
                    QualitySd       =  'sd'       # Standard Definition 240p, 360, 480p
                    QualityScr1080  =  'scr1080'  # Screener 1080p
                    QualityScr720   =  'scr720'   # Screener 720p
                    QualityScr      =  'scr'      # Screener
                    QualityCam1080  =  'cam1080'  # Camera Recording 1080p
                    QualityCam720   =  'cam720'   # Camera Recording 720p
                    QualityCam      =  'cam'      # Camera Recording
                    Video Codec
                    The video codec of the stream.
                    PY
                    CodecH266  =  'h266'  # Moving Picture Experts Group Future Video Codec
                    CodecH265  =  'h265'  # Moving Picture Experts Group High Efficiency Video Coding
                    CodecH264  =  'h264'  # Moving Picture Experts Group Advanced Video Coding
                    CodecH262  =  'h262'  # Moving Picture Experts Group Part 2
                    CodecH222  =  'h222'  # Moving Picture Experts Group Part 1
                    Codec3gp   =  '3gp'   # Third Generation Partnership Project
                    CodecAvi   =  'avi'   # Audio Video Interleave
                    CodecDivx  =  'divx'  # DivX Video
                    CodecFlv   =  'flv'   # Flash Video
                    CodecMkv   =  'mkv'   # Matroska Multimedia Container
                    CodecMov   =  'mov'   # QuickTime File Format
                    CodecMpeg  =  'mpeg'  # Moving Picture Experts Group
                    CodecWmv   =  'wmv'   # Windows Media Video
                    CodecXvid  =  'xvid'  # XviD
                    Release Type
                    The release type of the stream.
                    PY
                    ReleaseBdrip   =  'bdrip'   # BluRay Rip
                    ReleaseBdrmx   =  'bdrmx'   # BluRay Remux
                    ReleaseBdscr   =  'bdscr'   # BluRay Screener
                    ReleaseBluray  =  'bluray'  # BluRay
                    ReleaseCam     =  'cam'     # Camera
                    ReleaseDdc     =  'ddc'     # Direct Digital Content
                    ReleaseDvd     =  'dvd'     # DVD
                    ReleaseDvdrip  =  'dvdrip'  # DVD Rip
                    ReleaseDvdrmx  =  'dvdrmx'  # DVD Remux
                    ReleaseDvdscr  =  'dvdscr'  # DVD Screener
                    ReleaseHdrip   =  'hdrip'   # HD Rip
                    ReleaseHdts    =  'hdts'    # HD Telesync
                    ReleaseHdtv    =  'hdtv'    # HD Television
                    ReleasePdvd    =  'pdvd'    # PDVD
                    ReleasePpv     =  'ppv'     # Pay Per View
                    ReleaseR5      =  'r5'      # Region 5
                    ReleaseScr     =  'scr'     # Screener
                    ReleaseTk      =  'tk'      # Telecine
                    ReleaseTs      =  'ts'      # Telesync
                    ReleaseTvrip   =  'tvrip'   # Television Rip
                    ReleaseVcd     =  'vcd'     # Virtual CD
                    ReleaseVhs     =  'vhs'     # VHS
                    ReleaseVhsrip  =  'vhsrip'  # VHS Rip
                    ReleaseWebcap  =  'webcap'  # Web Capture
                    ReleaseWebdl   =  'webdl'   # Web Download
                    ReleaseWebrip  =  'webrip'  # Web Rip
                    ReleaseWp      =  'wp'      # Workprint
                    Edition Type
                    The edition of the stream.
                    PY
                    EditionNone        =  None          # Normal cinema version
                    EditionExtended    =  'extended'    # Extended editions
                    EditionCollector   =  'collector'   # Collector editions
                    EditionDirector    =  'director'    # Director cuts
                    EditionCommentary  =  'commentary'  # Commentary voiceovers
                    EditionMaking      =  'making'      # Making of editions
                    EditionSpecial     =  'special'     # Special editions
                    Audio Type
                    The audio type of the stream.
                    PY
                    AudioStandard  =  'standard'  # Standard non-dubbed audio
                    AudioDubbed    =  'dubbed'    # Dubbed or voiced-over audio
                    Audio System
                    The audio system of the stream.
                    PY
                    SystemDd    = 'dd'    # Dolby Digital
                    SystemDts   = 'dts'   # Digital Theater Systems
                    SystemDig   = 'dig'   # DigiRise
                    SystemMpeg  = 'mpeg'  # Moving Picture Experts Group
                    SystemXiph  = 'xiph'  # Xiph Foundation
                    SystemWin   = 'win'   # Windows
                    SystemApp   = 'app'   # Apple
                    Audio Codec
                    The audio codec of the stream.
                    PY
                    CodecAmsthd  = 'amsthd'  # Atmos TrueHD
                    CodecAmspls  = 'amspls'  # Atmos Plus
                    CodecAms     = 'ams'     # Atmos
                    CodecThd     = 'thd'     # TrueHD
                    CodecPls     = 'pls'     # Plus
                    CodecLve     = 'lve'     # Live
                    CodecSex     = 'sex'     # Surround EX
                    CodecEx      = 'ex'      # EX
                    CodecAc3     = 'ac3'     # Audio Codec 3
                    CodecAc4     = 'ac4'     # Audio Codec 4
                    Codec70      = '70'      # 70MM
                    Codec9624    = '9624'    # 96/24
                    CodecEs      = 'es'      # Extended Surround
                    CodecNeo6    = 'neo6'    # Neo:6
                    CodecNeox    = 'neox'    # Neo:X
                    CodecNeopc   = 'neopc'   # Neo:PC
                    CodecNeo     = 'neo'     # Neo
                    CodecHdhra   = 'hdhra'   # High Definition High Resolution Audio
                    CodecHdma    = 'hdma'    # High Definition Master Audio
                    CodecHd      = 'hd'      # High Definition
                    CodecNx      = 'nx'      # Neural:X
                    CodecHx      = 'hx'      # Headphone:X
                    CodecSs      = 'ss'      # Surround Sensation
                    CodecCon     = 'con'     # Connect
                    CodecIna     = 'ina'     # Interactive
                    CodecPyf     = 'pyf'     # PlayFi
                    CodecX       = 'x'       # X
                    CodecDra     = 'dra'     # Dynamic Resolution Adaptation
                    CodecAac     = 'aac'     # Advanced Audio Coding
                    CodecMp3     = 'mp3'     # Moving Picture Experts Group Audio Layer III
                    CodecMp2     = 'mp2'     # Moving Picture Experts Group Audio Layer II
                    CodecFlac    = 'flac'    # Free Lossless Audio Codec
                    CodecOgg     = 'ogg'     # Ogg
                    CodecWma     = 'wma'     # Windows Media Audio
                    CodecAlac    = 'alac'    # Apple Lossless Audio Codec
                    CodecPcm     = 'pcm'     # Pulse Code Modulation
                    Audio Channels
                    The number of audio channels of the stream.
                    PY
                    Channels1  =  1  # Mono
                    Channels2  =  2  # Stereo
                    Channels6  =  6  # 5.1 Surround Sound
                    Channels8  =  8  # 7.1 Surround Sound
                    Subtitle Type
                    The subtitle type of the stream.
                    PY
                    SubtitleNone  =  None    # No subtitles
                    SubtitleSoft  =  'soft'  # Soft-coded subtitles that can be disabled
                    SubtitleHard  =  'hard'  # Hard-coded subtitles that cannot be disabled
                    Sorting Value
                    The attribute to sort streams by.
                    PY
                    SortShuffle        =  'shuffle'        # Randomly shuffle results
                    SortPopularity     =  'popularity'     # Sort by popularity
                    SortTimeAdded      =  'timeadded'      # Sort by time first added
                    SortTimeUpdated    =  'timeupdated'    # Sort by time last updated
                    SortVideoQuality   =  'videoquality'   # Sort by video quality
                    SortAudioChannels  =  'audiochannels'  # Sort by audio channel count
                    SortFileSize       =  'filesize'       # Sort by file size
                    SortStreamSeeds    =  'streamseeds'    # Sort by torrent seed count
                    SortStreamAge      =  'streamage'      # Sort by usenet age
                    Sorting Order
                    The order in which streams are sorted.
                    PY
                    OrderAscending   =  'ascending'   # Order by low to high
                    OrderDescending  =  'descending'  # Order from high to low
                    Kodi Examples
                    This section provides basic examples of how to use the addon's interface.
                    Stream Search
                    Search for streams using various filters.
                    PY
                    # Import the module.
                    from orion import *
                    
                    # Create an instance.
                    orion = Orion('Your App API Key')
                    
                    # Retrieve a movie using an IMDb ID.
                    result = orion.streams(type = Orion.TypeMovie, idImdb = '0063350')
                    
                    # Retrieve an episode using a TVDb ID.
                    result = orion.streams(type = Orion.TypeShow, idTvdb = '73739', numberSeason = 3, numberEpisode = 5)
                    
                    # Retrieve a movie using a query string. Using a query is not advised, since the wrong results might be returned.
                    result = orion.streams(type = Orion.TypeMovie, query = 'Night of the Living Dead 1968')
                    
                    # Retrieve a movie no larger than 2GB and being either a direct hoster, a cached torrent, or a cached usenet link on Premiumize.
                    result = orion.streams(type = Orion.TypeMovie, idImdb = '0063350', fileSize = [None, 2147483648], access = [Orion.AccessDirect, Orion.AccessPremiumizeTorrent, Orion.AccessPremiumizeUsenet])
                    
                    # Retrieve a movie that has a video quality between SD and HD1080, and a DD or DTS audio system.
                    result = orion.streams(type = Orion.TypeMovie, idImdb = '0063350', videoQuality = [Orion.QualitySd, Orion.QualityHd1080], audioSystem= [Orion.SystemDd, Orion.SystemDts])
                    
                    # Retrieve a movie that has a popularity of at least 50% and sorted by file size in descending order.
                    result = orion.streams(type = Orion.TypeMovie, idImdb = '0063350', popularityPercent = 0.5, sortValue = Orion.SortFileSize, sortOrder = Orion.OrderDescending)
                    
                    # Retrieve a movie with a maximum of 100 links and a page offset of 2, that is link number 101 - 200.
                    result = orion.streams(type = Orion.TypeMovie, idImdb = '0063350', limitCount = 100, limitPage = 2)
                    
                    # Retrieve a movie but only torrent MAGNET links or hoster HTTPS links.
                    result = orion.streams(type = Orion.TypeMovie, idImdb = '0063350', protocolTorrent = [Orion.ProtocolMagnet], protocolHoster = [Orion.ProtocolHttps])
                    
                    # Vote up a working stream.
                    orion.streamVote(idItem = 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', idStream = 'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', vote = Orion.VoteUp)
                    
                    # Vote down a non-working stream.
                    orion.streamVote(idItem = 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', idStream = 'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', vote = Orion.VoteDown)
                    
                    # Request the removal of an incorrect or non-working stream.
                    orion.streamRemove(idItem = 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', idStream = 'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB')
                    Container Search
                    Search for container details using source links.
                    PY
                    # Import the module.
                    from orion import *
                    
                    # Create an instance.
                    orion = Orion('Your App API Key')
                    
                    # Search for container details.
                    result = orion.containers(links = ['https://www2.yggtorrent.ch/engine/download_torrent?id=459370', 'https://abnzb.com/api?t=get&id=716b6d95f2c61b1c57edbace625ac739'])
                    Container Identifiers
                    Search for container hashes and segment message IDs using source links.
                    PY
                    # Import the module.
                    from orion import *
                    
                    # Create an instance.
                    orion = Orion('Your App API Key')
                    
                    # Search for hashes and segment message IDs.
                    result = orion.containerIdentifiers(links = ['https://abnzb.com/api?t=get&id=716b6d95f2c61b1c57edbace625ac739'])
                    Container Hashes
                    Search for container hashes using source links.
                    PY
                    # Import the module.
                    from orion import *
                    
                    # Create an instance.
                    orion = Orion('Your App API Key')
                    
                    # Search for hashes.
                    result = orion.containerHashes(links = ['https://www2.yggtorrent.ch/engine/download_torrent?id=459370', 'https://abnzb.com/api?t=get&id=716b6d95f2c61b1c57edbace625ac739'])
                    Container Segments
                    Search for container segment message IDs using source links.
                    PY
                    # Import the module.
                    from orion import *
                    
                    # Create an instance.
                    orion = Orion('Your App API Key')
                    
                    # Search for segment message IDs.
                    result = orion.containerSegments(links = ['https://abnzb.com/api?t=get&id=716b6d95f2c61b1c57edbace625ac739'])
                    Container Download
                    Download the file.
                    PY
                    # Import the module.
                    from orion import *
                    
                    # Create an instance.
                    orion = Orion('Your App API Key')
                    
                    # Download the container file and save it as a variable.
                    result = orion.containerDownload(id = 'https://abnzb.com/api?t=get&id=716b6d95f2c61b1c57edbace625ac739')
                    
                    # Download the container file and save it to file.
                    result = orion.containerDownload(id = 'https://abnzb.com/api?t=get&id=716b6d95f2c61b1c57edbace625ac739', path = '/tmp/download.nzb')
                    
                    # Download the container file using the SHA1 hash.
                    result = orion.containerDownload(id = 'a1adbd9fcfccbcde20d75293879abbb62b217920')
                    
                    # Download the container file using the Orion ID.
                    result = orion.containerDownload(id = 'AKR9MDK8NPFMACGJGTNBQHLMHA8APGCQ')
                    App Details
                    Retrieve various details about your app.
                    PY
                    # Import the module.
                    from orion import *
                    
                    # Create an instance.
                    orion = Orion('Your App API Key')
                    
                    # Retrieve your app details and status.
                    result = orion.app()
                    
                    # Check if your app key and status is valid.
                    result = orion.appValid()
                    
                    # Show a Kodi dialog with your app details.
                    result = orion.appDialog()
                    User Details
                    Retrieve various details about the user.
                    PY
                    # Import the module.
                    from orion import *
                    
                    # Create an instance.
                    orion = Orion('Your App API Key')
                    
                    # Retrieve your user account details and status.
                    result = orion.user()
                    
                    # Check if the user key and status is valid.
                    result = orion.userValid()
                    
                    # Check if the user has a free account.
                    result = orion.userFree()
                    
                    # Check if the user has a premium account.
                    result = orion.userPremium()
                    
                    # Show a Kodi dialog with the user details.
                    result = orion.userDialog()
                    Server Details
                    Retrieve the server statistics.
                    PY
                    # Import the module.
                    from orion import *
                    
                    # Create an instance.
                    orion = Orion('Your App API Key')
                    
                    # Retrieve the Orion server stats.
                    result = orion.serverStats()
                    
                    # Show a Kodi dialog with the Orion server stats.
                    result = orion.serverDialog()
                    
                    # Test if the Orion server is up and running.
                    result = orion.serverTest()
                    
                    # Retrieve Orion's website URL.
                    result = orion.link()
                    How does Orion work?
                    Orion is a community maintained caching facility for links, hashes, containers, and corresponding metadata. Users who scrape other publicly available websites for torrent, usenet, and hoster links, submit their results to Orion. Subsequent users can then retrieve these cached results without having to go through the lengthy scraping process themselves. This drastically reduces the overall time to find links. Orion is especially useful for people with low-end devices, a slow internet connection, or people who are simply too impatient to wait a few minutes for the scraping process to finish.
                    What is the differnce between the daily limits?
                    Orion has three different daily limits, depending on which part of the API you query.
                    1. Link Limit: The number of torrent, usenet, and hoster links you can retrieve per day. Each link is accompanied by detailed metadata. Links are used to retrieve the files through a third-party service.
                    2. Hash Limit: The number of torrent and usenet hashes you can retrieve per day. Torrent containers (.torrent files) and usenet containers (.nzb files) do not contain an explicit hash. Hashes are used to do cache lookups on debrid services. By querying hashes from Orion, you can do cache inspection for usenet and torrent files, which would otherwise not be possible.
                    3. Container Limit: The number of torrent and usenet containers you can download per day. Orion will try to avoid using this limit by converting torrent files into magnet links and allowing you to download the container from a third-party website. In case the third-party service is unavailable or requires a premium subscription, you can download the .torrent or .nzb file directly from Orion.
                    How are daily limits calculated?
                    The daily limits are calculated using a 24 hour sliding window. Therefore, limits are not reset at midnight, but are calculated on a continuous basis. With each query you submit to the API, a certain number of results are returned. If the total number of results you retrieved over the last 24 hours exceeds the limit of your subscription package, you will not be able to make any further requests for a while. In order to avoid reaching your daily limit, you can fine-tune your filters or set the maximum number of links returned by an API request. Alternatively, you can upgrade your subscription to increase the daily limit.
                    Does Orion provide access to files?
                    No. Orion does not create, host, or distribute any video files or streams. Orion's API handles purely textual data that was submitted by the user community. All links and metadata are retrieved from other publicly available websites. The links cached on Orion point to files on other servers which are not in any way affiliated with Orion. Orion can therefore be seen as a high-level search engine on top of other websites and indexes.
                    Which kind of links does Orion cache?
                    Orion caches links to torrent files and magnet links, usenet NZB containers, and files hosted on a wide variety of file servers and hosters. You can configure your filters to only return links for selected types.
                    Why are some links not working?
                    Links and metadata on Orion are automatically maintained by the community. Over time users add new links to Orion. If links are very old, they might not work anymore, especially links from hosters. Torrent and usenet links should work for longer periods. The Orion API provides filter options to remove old links and only return the most recent ones. Using this option will increase the likelihood of the link being operational.
                    Why is some metadata wrong or inaccurate?
                    Links and metadata on Orion are automatically maintained by the community. If a link was not updated in a while, the corresponding metadata might be outdated and inaccurate. Most of the metadata is static and will not change over time. However, some metadata will change. For instance, the number of torrent seeds might not represent the current count. The debrid cache status might also be wrong. If the cached status was updated a while back, the debrid servers might have removed the corresponding file in the meantime. Hence, even if API filters are configured to only return cached links, the cached status might have changed for some of the results.
                    Can I customize my searches and use filters?
                    Yes. We have a wide variety of options to fully customize queries and filter out links that do not meet your requirements. You can therefore configure your filters to only return links according to your preferences and reduce the number of daily links that you use.
                    Do you track users or keep logs?
                    We do not keep any logs on our servers, meaning that your IP address is not stored. Users' privacy is very important to us and we have implemented a number of features to keep you as anonymize as possible.
                    Although we have a zero-log policy, we do track the country users make requests from in order to help us optimally place our servers closer to users. The moment your request arrives at our servers, we anonymize the last two octets of your IP address, that is, replacing half of the address with zeros. This ensures that it cannot be traced back to you. EU regulations dictate that only a single octet must be anonymized. We ensure even better anonymity, by applying it to two octets. We only keep track of the country, but not the region, city, or coordinates. Technically two octets are not even enough to accurately track the country, but we only need a more-or-less rough estimation of the country.
                    We also do not store information connecting your account to API requests. Hence, there is no way of correlating requests made to the server to a specific user.
                    How do you ensure users' privacy?
                    We do the following to ensure users' privacy and anonymous access:
                    1. We do not keep access logs on our servers. Your IP address is therefore never stored.
                    2. We anonymize your IP address before using it for a country lookup. At no point in time do we keep more accurate location information than the country. The anonymized IP address can never be used to track you, it will most likely not even be enough to accurately determine your country. Refer to the tracking/logging FAQ for more information.
                    3. We do not store information that can be used to connect API requests to a specific user account. Hence, there is no data that indicates that a user made a specific API query.
                    4. We only require an email address and password during registration. If you are really concerned about the privacy of your email address, you can always use an alternative one. We do not recommend using a temporarily email account, since you will not be able to reset your password or communicate with us if you lose access to that account. We rather recommend creating a secondary, but permanent, email account. But this is not necessary for most users, only for the very paranoid ones.
                    5. We fully salt and hash passwords. Hence, even in the unlikely case that our servers get hacked, intruders will not be able to see your password or use it on other websites in case you use the same password for multiple accounts. Passwords are also hashed before being send to our servers, protecting you against man-in-the-middle attacks. Due to password hashing, not even we can see your password. In addition, we have an API key that is separate to your password. So you can change your API key if it was compromised, without having to change your password.
                    6. We offer various pseudo-anonymous payments options using cryptocurrencies and resellers. If you want to even further improve your anonymity, you can use privacy-oriented coins, such as Monero or Zcash, which are even more private. The crpyo payment gateways accept a variety of different coins and tokens.
                    7. You can connect to Orion over the Tor network for onion-based routing and encryption.
                    8. We do not share information with any third parties. We have so little data on users, that there is no data to share in the first place. We do not sell data to other companies, or in any way share information with other websites, institutions, or governments.
                    9. Here we like to iterate again that we did everything from a developer's perspective to ensure your privacy. If you have any questions, please contact us.
                    Do you offer private payments?
                    Yes. We offer private payments through cryptocurrencies and reseller vouchers. The crypto payment gateways accept a variety of different coins and tokens, including privacy-oriented Monero and Zcash.
                    Do you offer Tor access?
                    Yes. You can connect to Orion via the Tor network. The website is located at http://orion5fsqamcug7v.onion and the API is available at http://api.orion5fsqamcug7v.onion. For more information on Tor, visit https://torproject.org.
                    Which payment options do you accept?
                    We currently accept cryptocurrencies, PayPal, and other payment methods through third-party resellers. Note that due to higher fees imposed by some gateways and resellers, prices might differ between different payment options. Cryptocurrencies will in most cases be the cheapest. We currently use CoinGate for crypto payments which accepts more than 50 different coins and tokens.
                    Why do packages have different prices?
                    Besides the difference in daily limits and the total number of subscription months, the difference in prices is a result of gateway fees. Gateways have different fees and other restrictions which is the cause for higher package prices. The lowest prices are offered through cryptocurrency gateways, followed by fiat gateways such as PayPal. Resellers have the highest prices, since they often charge about 30% in fees.
                    What is the difference between the premium packages?
                    The premium packages are all the same. The only difference is the number of daily links that can be retrieved. But besides the link limit, premium accounts operate in the same manner and have the same benefits.
                    Can I integrate Orion with my own app?
                    Absolutely yes. You will need a custom app API key to get started, which can be requested easily and for free once logged into the Orion website. Please do not use the key of an existing app, but request a new one for each app you write. Once you have a key, you can start developing using our documentation. You can either use our RESTful JSON-based HTTP API, or if you develop something for Kodi, utilize our easy-to-use addon which only requires a single function call. If your app gains traction, we might consider giving you a free premium account for development purposes. Contact us for more information.
                    May I share my app API key?
                    No. If you are a developer and like to integrate Orion with your website, addon, or other program, please request a custom app API key. App keys are free and easy to obtain, so there is no reason why you should ever use another app's key. If you develop multiple apps, please request a separate key for each of them. We are more than happy to hand out multiple keys. App keys can be requested once logged into the website panel.
                    Does Orion offer support for Kodi?
                    Yes. We have a module addon for Kodi that provides an easy-to-use Python interface for quick integration into your own Kodi addon. You can retrieve links from Orion with a single function call. Other features to access user account information and server stats is also available. The addon has its own settings, so that users have to setup their account and configure their filters only once. All external addons that integrate the Orion addon can then make use of these universal settings, or alternatively overwrite them with their own custom configurations.
                    General & Questions
                    Account & Payments
                    API & Development
                    Bugs & Suggestions
                    Invalid & Dead Links
                    Unsubscribe & GDPR
                    Legal & DMCA