Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

allianceauth-graphql

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

allianceauth-graphql

GraphQL integration for AllianceAuth

  • 1.3.0
  • Source
  • PyPI
  • Socket score

Maintainers
1

allianceauth-graphql

version GitHub issues github codecov

GraphQL integration for AllianceAuth

Free software: GNU General Public License v3

This version is in beta, please open an issue if you face any bug.

Compatibility

Versions >=0.16 are only compatible with AllianceAuth v3.

Setup

The following is assuming you have a functioning AllianceAuth installation.

Install plugin

  1. pip install allianceauth-graphql.

  2. Add the following apps to the bottom of your INSTALLED_APPS in the local.py settings file:

    'allianceauth_graphql',
    'graphene_django',
    "graphql_jwt.refresh_token.apps.RefreshTokenConfig",
    
  3. Add the following settings to your local.py file:

    from datetime import timedelta
    
    # ...
    
    GRAPHENE = {
        'SCHEMA': 'allianceauth_graphql.schema.schema',
        "MIDDLEWARE": [
            "graphql_jwt.middleware.JSONWebTokenMiddleware",
        ],
    }
    
    AUTHENTICATION_BACKENDS += [
        "graphql_jwt.backends.JSONWebTokenBackend",
    ]
    
    GRAPHQL_JWT = {
        "JWT_VERIFY_EXPIRATION": True,
        "JWT_LONG_RUNNING_REFRESH_TOKEN": True,
        "JWT_EXPIRATION_DELTA": timedelta(days=1),
        "JWT_REFRESH_EXPIRATION_DELTA": timedelta(days=7),
    }
    

    Feel free to edit the expiration limits of your tokens.

  4. Edit your projects url.py file:

    It should looks something like this

    from django.conf.urls import include
    from allianceauth import urls
    from django.urls import re_path
    
    urlpatterns = [
        re_path(r'', include(urls)),
    ]
    
    handler500 = 'allianceauth.views.Generic500Redirect'
    handler404 = 'allianceauth.views.Generic404Redirect'
    handler403 = 'allianceauth.views.Generic403Redirect'
    handler400 = 'allianceauth.views.Generic400Redirect'
    

    After the edit:

    from django.conf.urls import include
    from allianceauth import urls
    from allianceauth_graphql import urls as aa_gql_urls
    from django.urls import re_path
    
    urlpatterns = [
        re_path(r'', include(urls)),
        re_path(r'graphql/', include(aa_gql_urls)),
    ]
    
    handler500 = 'allianceauth.views.Generic500Redirect'
    handler404 = 'allianceauth.views.Generic404Redirect'
    handler403 = 'allianceauth.views.Generic403Redirect'
    handler400 = 'allianceauth.views.Generic400Redirect'
    
  5. Run migrations.

  6. If you have SHOW_GRAPHIQL setting set to True (see below), run collectstatics

  7. Restart AllianceAuth.

Community Creations Integration

Currently the package supports the integration with the following community packages:

  • allianceauth-pve: v1.11.x

Be sure to check if you have the right versions of these package or the GraphQL will not have the same behaviour as the apps.

Settings

SettingDefaultDescription
SHOW_GRAPHIQLTrueShows the graphiql UI in the browser
GRAPHQL_LOGIN_SCOPES['publicData']Tokens needed. Unlike AllianceAuth pages, you need to login with the scopes you'll use, otherwise you won't be able to perform some queries
REDIRECT_SITENo defaultThe URL domain for redirecting after email verification. It has to have the protocol and not the slash at the end: http(s)://<yoursite>
REDIRECT_PATH/registration/callback/Path to append to REDIRECT_SITE for building the redirect URL

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc