This post is co-authored by Postman Technical Community Manager Hannah Neil and Postman Developer Advocate Meenakshi Dhanani.
You may be noticing rainbow flags floating around the internet, or—depending on where you are—you may be noticing them around your neighborhood. LGBTQ+ Pride Month is most commonly held each June as a celebration of queer identity. Pride parades, demonstrations, and events are some of the ways to own and celebrate the parts of our identities that may have been stigmatized, criminalized, or feel dangerous to acknowledge. From Sao Paulo to San Francisco, Puerto Vallarta to Paris, these events draw millions of participants each year.
In the United States and many other countries, Pride Month is held in June to honor the Stonewall uprising that took place in June of 1969. The historic uprising was a reaction to the police raid of the Stonewall Inn, a New York City gay bar at a time when being homosexual, or perceived as homosexual, was illegal. The leadership of Marsha P. Johnson, a Black transgender sex worker and activist, and others sparked the Western LGBTQ+ rights movement that we recognize today.
In India, Pride celebrations occur in November and December of each year across more than 21 Indian cities—bringing together thousands of LGBTQ+ Indians and allies. The first Pride Parade in India was the Kolkata Rainbow Pride March in 1998. Twenty years later, in 2018, the Indian Supreme Court decriminalized homosexual relations. While the right for same-sex couples to marry has not yet been legalized throughout India, the Haryana court and Madras high court have recognized same-sex marriages in the past.
Being gay is no longer illegal in the United States, and same-sex marriage was legalized across the entire country in 2015. But being legally allowed to marry does not mean equality has been won. A flurry of anti-transgender legislation is popping up all over the country—more anti-transgender bills were filed in the first three months of 2021 than all of 2020. These laws prohibit transgender individuals from accessing critical, life-saving healthcare, discriminate against transgender individuals for basic human rights, and more. Bills about bathroom and locker room segregation dominate news cycles.
This is why creating safe spaces and understanding legislation is so important. Lives are literally at stake. 2020 marked the deadliest year for transgender and gender-nonconforming people in the US. To help address concerns around such alarming trends, we’ve added new collections to Postman’s LGBTQ+ Pride public workspace, which serves as an invitation for the API community to support LGBTQ+ communities via APIs. These are the new collections:
- The LGBTQ+ Safe Space Assist collection creates a Slack bot to find restrooms and other addresses that are reportedly safe spaces.
- The Open States Legislation collection examines state-level legislation that protect, limit, or at least acknowledge LGBTQ+ human rights.
- The LGBTQ+ Opportunities in STEM collection returns a list of opportunities available for LGBTQ+ people in tech.
- The <CONTRIBUTIONS> collection accepts contributions in the form of collections. You can add a collection as a folder to the root <CONTRIBUTIONS> collection.
But first, what do APIs have to do with Pride?
It is still illegal to be gay in over 70 countries. While 29 countries have legalized same-sex marriage, societal acceptance still runs the gamut. The LGBTQ+ Pride public workspace is a resource for LGBTQ+ people and allies to find safe spaces and work opportunities, and to understand laws about sexuality and gender.
Examples of ways APIs can help include our LGBTQ+ Safe Space Assist collection, which coordinates safe locations, such as bathrooms, for LGBTQ+ people. It can be incredibly dangerous for LGBTQ+ individuals to travel, so the collection’s Slack bot is intended to help individuals minimize risk. Another example is the Open States Legislation collection, which looks at legislation relevant to LGBTQ+ issues in the US. It can be used to find and understand laws in each state or city, including which laws are being voted upon and how.
Even if you don’t identify as LGBTQ+, the LGBTQ+ Pride public workspace is for you too. We hope you will explore and contribute to the workspace, which demonstrates a few ways the API community can show up for the LGBTQ+ community. We value your contributions.
The public workspace is a work in progress, and while it is currently US-focused, we invite (and strongly encourage) global non-US resources and submissions. And, if you contribute to this workspace, we will mail you our beloved Postman Pride Stickers as a little thank you.
LGBTQ+ Pride public workspace and collections
Here is a breakdown of some of the key collections you’ll find in the LGBTQ+ Pride public workspace, and how you can put each to use:
LGBTQ+ Safe Space Assist collection
This collection gets triggered by a webhook that we create by running the requests in the Webhook Setup collection in this workspace. Click the Run in Postman button below to fork the Webhook Setup collection.
A flow chart showing how the Safe Space Assist Alert works
Before we dive in, make sure that you have forked the Webhook Setup collection and this collection (LGBTQ+ Safe Space Assist). There are a couple of steps involved that help you receive Slack messages for safe spaces:
1. Run the Webhook Setup collection
The Postman API allows you to create webhooks that trigger a collection run. The Webhook Setup collection has requests to find the current workspace ID and collection UID that are then sent as the request body to the Create a Webhook to find a Safe Space request. Learn more about webhooks in Postman’s Learning Center.
2. Create a Slash command /safe-space-assist
Next, you will need to create a Slack application in our workspace. Within the application, you can set up a Slash command /safe-space-assist that accepts an address. For more details, read Enabling interactivity with Slash Commands.
LGBTQ+ Safe Space Assist Slack app
3. Webhook API triggers the LGBTQ+ Safe Space Assist collection run
The second step allows you to fire the /safe-space-assist command with an address parameter, which is then sent as payload to the webhook endpoint you created in step one. The webhook then triggers the LGBTQ+ Safe Space Assist collection. Click the Run in Postman button to fork the collection.
4. Collection request posts the list of safe spaces to Slack channel
The LGBTQ+ Safe Space Assist collection has requests that help find latitude and longitude and uses the Refuge Restrooms API to find restrooms via latitude and longitude. Finally, a list of all safe spaces near the address are sent to a Slack channel. This is done by setting up incoming channel webhooks for our application in Slack. Diver deeper into Slack messaging here.
#safe-space-lgbtq+ slack update
Open States Legislation collection
In many countries, the US included, legislation is intentionally confusing. It is not easily accessible to the average person, and many lawmakers don’t fully understand what they are voting on. Open States is an independent project compiling data on US state legislatures. Using the Open States API, you can get information about bills and representatives to know which laws are voted upon, how, and by whom.
The Open States Legislation collection provides templates to search for laws relevant to the LGBTQ+ communities in each state. Using the examples of five distinct bills, you can find bills by keywords and then drill further into bill details. You can discover and track the status of each bill. You can even get resources, documents, versions, abstracts, sources, and votes of bills, if available.
1. Create your Open States account to get your API key. Then, fork the Open States Legislation collection to your own workspace. Click the Run in Postman button below to fork the collection. Add your API Key to the authorization header of your collection.
2. Using the Bills Search request, choose a state and keywords by changing the query params:
- Jurisdiction: You can find the jurisdiction name or ID. Just using the state’s names can be easiest (i.e., California and New York).
- q: Set this param as keywords to identify the bills. Keywords like sexual_orientation, discrimination, nonbinary, and visibility have worked.
- You can also search bills by legislative sessions, recent actions, specific sponsors, and types of sponsors. This is showing who proposed the bill and its most recent status change.
3. Once you find the bill you like, take the bill ID and explore Bill Detail by ID and Bill Detail requests for additional information:
- Bill Detail by ID: Obtains bill information by internal ID in the format ocd-bill/uuid.
- Bill Detail: Obtains bill information based on (state, session, bill_id).
We have used the Postman Visualizer to visualize API responses in this collection. You can view the list of bills by clicking Visualize.
Bills listed in a tabular format via Postman Visualizer
LGBTQ+ Opportunities in STEM collection
This collection lists opportunities available to LGBTQ+ in STEM through scholarships, internships, jobs, communities, etc. This list is limited as of now, but you can contribute to it by clicking the Run in Postman button below to fork it.
Once you have the collection forked, you can add an opportunity to the examples content for the /lgbtq/opportunities API request. These examples are picked up by the mock server that we generated using Postman. The collection hits the mock server to receive a list of the opportunities and by clicking on Visualize, these can be viewed in a tabular format as below:
List of opportunities for LGBTQ+ in STEM
Call to action
Here are some ways you can continue learning and participating:
- Learn some history about LGBTQ+ Pride from the workspace Overview page.
- Add the LGBTQ+ Safe Space Assist Slack bot to your Slack instance and let your coworkers know about it. Not all your LGBTQ+ coworkers are out yet, so providing this resource openly is proactively inclusive.
- If you’re in the US, use the Open States Legislation collection to understand what LGBTQ+ legislation is being voted upon in your state, and contact your local representatives.
- Do you know of legislation or APIs relevant to LGBTQ+ communities in your country? This is a public workspace, so please add them by forking existing collections and raising pull requests, or by adding your collections as folders to the <CONTRIBUTIONS> collection in the workspace.
Postman provides a wide range of functions and features to assist with API development, testing, and collaboration. Here are some commonly used functions in Postman:
Creating and Managing Requests: Postman allows you to create API requests by specifying the request method, URL, headers, parameters, and body. You can manage and organize requests within collections, including creating folders, adding descriptions, and reordering requests.
Request and Response Visualization: Postman provides a user-friendly interface to view and analyze request and response data. It supports syntax highlighting for various data formats such as JSON, XML, and HTML, making it easier to understand and validate the data.
Environment and Variables: Postman allows you to define variables and environments. Variables enable you to store and reuse dynamic values across requests, making them flexible and easy to maintain. Environments provide sets of variables specific to different environments (e.g., development, staging, production).
Pre-request Scripts: Postman enables you to execute scripts before sending API requests using pre-request scripts. These scripts can be used to dynamically generate values, manipulate data, or set variables based on specific conditions.
Collection Runner: The Collection Runner allows you to execute a series of requests in a collection. It enables you to perform data-driven testing by iterating over multiple sets of data or environments. You can configure iterations, delays, and data sources for more comprehensive testing.
Mock Servers: Postman allows you to create mock servers for simulating API responses without a live backend. Mock servers are useful during development, allowing frontend developers to work independently by providing simulated API responses.
Documentation Generation: Postman can automatically generate documentation for your APIs based on your requests and collections. It provides a simple way to share API specifications and details with stakeholders.
Collaboration and Teamwork: Postman offers collaboration features such as sharing collections, collaborating on requests, and commenting on specific requests or collections. It also supports version control integration to manage changes and updates effectively.
Integration and Automation: Postman integrates with various tools and services, including version control systems (e.g., Git), CI/CD platforms (e.g., Jenkins), and API management solutions. It provides options for integrating with these tools to automate API testing and deployment processes.