Create Issue Meta Endpoint not returning fields

Hi Team,
The Create Issue Meta Endpoint has stopped returning the list of fields even though I am setting the expand to projects.issuetypes.fields

The deprecation date for this API is 6th June 2024 as per this https://developer.atlassian.com/changelog/#CHANGE-1304
Have the expand functionalities already been deprecated?

Hello @KunalChadha

The endpoint is working perfectly for me, and when I add expand=projects.issuetypes.fields to the query then, sure enough, the response includes information about the fields in the issue creation screen for each issue type.

Also, the deprecation notice you’ve linked to says nothing about deprecating the expand functionality, but deprecating the entire endpoint itself and its replacement with two new endpoints.

@sunnyape Is there any other reason for which this API will return only the projects and issuetypes and not the fields?
This API has been working fine for us for the past few months, but it stopped working today, not sure of what the reason could be for this

Can you also share the curl for your request? @sunnyape
Another thing I noticed was that this is specifically failing for the OAuth flow tokens

There could be many, many reasons. All I can say is that it’s working just fine for me.

You haven’t provided any usable information as to HOW you’re executing your request, such as what language / toolset / libraries you’re using or what steps you’ve taken to test your requests outside your code using something like Postman.

Can you clarify what you mean by OAuth ‘specifically failing’? As compared to what… Basic Auth?

Here is a screen grab of a Postman session using an OAuth 2.0 session showing the response that includes the projects, then the issuetypes, then fields on the create screens:

I also tested using a Basic Auth session and get exactly the same response.

1 Like

I am using Postman to make this request
Curl for the request -

curl --location 'https://api.atlassian.com/ex/jira/{{Cloud Id}}/rest/api/3/issue/createmeta/?projectIds=10225&expand=projects.issuetypes.fields&issuetypeIds=10003' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {{Oauth Access Token}}'

Response:

{
    "expand": "projects",
    "projects": [
        {
            "expand": "issuetypes",
            "self": "https://api.atlassian.com/ex/jira/{{Cloud ID}}/rest/api/3/project/10225",
            "id": "10225",
            "key": "ISD",
            "name": "Integration Service Dummy",
            "avatarUrls": {
                "48x48": "https://api.atlassian.com/ex/jira/{{Cloud ID}}/rest/api/3/universal_avatar/view/type/project/avatar/10415",
                "24x24": "https://api.atlassian.com/ex/jira/{{Cloud ID}}/rest/api/3/universal_avatar/view/type/project/avatar/10415?size=small",
                "16x16": "https://api.atlassian.com/ex/jira/{{Cloud ID}}/rest/api/3/universal_avatar/view/type/project/avatar/10415?size=xsmall",
                "32x32": "https://api.atlassian.com/ex/jira/{{Cloud ID}}/rest/api/3/universal_avatar/view/type/project/avatar/10415?size=medium"
            },
            "issuetypes": [
                {
                    "self": "https://api.atlassian.com/ex/jira/{{Cloud ID}}/rest/api/3/issuetype/10003",
                    "id": "10003",
                    "description": "A user story. Created by Jira Software - do not edit or delete.",
                    "iconUrl": "{{Icon URL}}",
                    "name": "Story",
                    "untranslatedName": "Story",
                    "subtask": false,
                    "expand": "fields",
                    "fields": {
                        "issuetype": {
                            "required": true,
                            "schema": {
                                "type": "issuetype",
                                "system": "issuetype"
                            },
                            "name": "Issue Type",
                            "key": "issuetype",
                            "hasDefaultValue": false,
                            "operations": [],
                            "allowedValues": [
                                {
                                    "self": "https://api.atlassian.com/ex/jira/{{Cloud ID}}/rest/api/3/issuetype/10003",
                                    "id": "10003",
                                    "description": "A user story. Created by Jira Software - do not edit or delete.",
                                    "iconUrl": "{{Icon URL}}",
                                    "name": "Story",
                                    "subtask": false,
                                    "hierarchyLevel": 0
                                }
                            ]
                        },
                        "parent": {
                            "required": false,
                            "schema": {
                                "type": "issuelink",
                                "system": "parent"
                            },
                            "name": "Parent",
                            "key": "parent",
                            "hasDefaultValue": false,
                            "operations": [
                                "set"
                            ]
                        },
                        "project": {
                            "required": true,
                            "schema": {
                                "type": "project",
                                "system": "project"
                            },
                            "name": "Project",
                            "key": "project",
                            "hasDefaultValue": false,
                            "operations": [
                                "set"
                            ],
                            "allowedValues": [
                                {
                                    "self": "https://api.atlassian.com/ex/jira/{{Cloud ID}}/rest/api/3/project/10225",
                                    "id": "10225",
                                    "key": "ISD",
                                    "name": "Integration Service Dummy",
                                    "projectTypeKey": "software",
                                    "simplified": false,
                                    "avatarUrls": {
                                        "48x48": "https://api.atlassian.com/ex/jira/{{Cloud ID}}/rest/api/3/universal_avatar/view/type/project/avatar/10415",
                                        "24x24": "https://api.atlassian.com/ex/jira/{{Cloud ID}}/rest/api/3/universal_avatar/view/type/project/avatar/10415?size=small",
                                        "16x16": "https://api.atlassian.com/ex/jira/{{Cloud ID}}/rest/api/3/universal_avatar/view/type/project/avatar/10415?size=xsmall",
                                        "32x32": "https://api.atlassian.com/ex/jira/{{Cloud ID}}/rest/api/3/universal_avatar/view/type/project/avatar/10415?size=medium"
                                    },
                                    "projectCategory": {
                                        "self": "https://api.atlassian.com/ex/jira/{{Cloud ID}}/rest/api/3/projectCategory/10010",
                                        "id": "10010",
                                        "description": "",
                                        "name": "Other"
                                    }
                                }
                            ]
                        }
                    }
                }
            ]
        }
    ]
}

In this response, we are only getting 3 fields - issuetype, project & parent
Earlier we would get a list of all the fields (including custom fields) needed to create an issue in the response

If I make the same request using Basic Auth, I get a list of all the fields (including custom fields) needed to create the issue

Not sure of why this is happening
Can any setting changed in jira cause this issue?

I see only some cURL, but no Postman screen grabs.

Well, it sounds like you’ve found the root cause of your problem… there is something significantly different between the credentials of the user account you’re using for the Basic Auth session compared to the OAuth session. If they belonged to the same user account, they would yield the exact same result, provided the requests were identical.

You need to be systematic and rule out all the factors such as:

  1. Is the same user account the source of both the Basic and OAuth credentials?
  2. Is the same Jira instance being accessed for both connections? (IE, as per this thread when the OP found they were accidentally accessing a sandbox instance instead of a live instance).
  3. Apart from the authentication method, are both requests really, truly identical, without some simple typographic error.

Since you’ve not provided the full example of your Basic Auth session with the full domain path AND you’ve obfuscated your Jira domain in the response with {{Icon URL}} from your OAuth session, there’s no way of knowing if you’ve accessing the same Jira instance as the one you’re trying with your Basic Auth session.

You keep referring to ‘we’, which infers a team or group of people. Perhaps you and your team might want to spend some time cross-checking each other’s work to validate that someone isn’t making a simple mistake in their method or a simple user account mix-up.

Have fun.

1 Like
  1. Is the same user account the source of both the Basic and OAuth credentials?
    Yes
  1. Is the same Jira instance being accessed for both connections?
    Yes
  1. Apart from the authentication method, are both requests really, truly identical, without some simple typographic error.
    Yes, both the requests are identical in terms of the path and the query params. What changes is the authentication method and the host

All of these factors have already been checked by us before starting this thread.
I can share the Postman screen grabs with the icon urls if thats what is needed to debug this further

Keeping the Basic Auth case aside, why aren’t all the fields being returned for the OAuth request I shared above? What could the potential reasons be?

It would have been preferable if you had provided this information from the outset, rather than us playing 50 Guesses.

What do you mean by changing the ‘host’?? That word has the same meaning as ‘instance’… which means you are NOT using the same Jira instance for both request types. Again, since you haven’t provided the complete URLs for both request types showing the domains (the ‘hosts’), there is no way to confirm what you are saying is true.

I have given my opinion on what I believe are the potential reasons for what you are observing. Since I cannot replicate the problem and your entire team has not been able to resolve the matter, I advise that you raise a support request with Atlassian to investigate.

@KunalChadha

You need to start watching this thread, as others are reporting a problem with OAuth 2.0 and the CreateMeta endpoint, so there might be a technical problem affecting Jira Cloud in some locations.

Our dev team is currently looking into this issue.

Please check (and subscribe to) below link to the developers status page for updates:

2 Likes

HI Team,

As you might have seen in Developer Status Page or in the other thread, this issue has now been resolved. If you continue to have issue please contact the Developer Support team through https://developer.atlassian.com/support with full details of what’s happening.

Regards,
James.

2 Likes